Ben içeriğe sahip bir qsub iştir bir shell script foo.sh
var. Qsub foo.sh a b çağırırsam ilk argüman doğru bir şekilde işlenir ve komut satırına 'a' olarak yankılanır. Ancak, '# $ -N' ile başlayan ikinci durumda bir argümanın nasıl geçeceğini bilmiyorum. Bu durumda $ 2, 'b' olarak değerlendirilmez, ancak aslında '$ 2' ayarlanır. Yardım çok takdir edilecektir.Argüman
Argüman
cevap
Hayır, yapamazsın yankıları bilmiyorum. Satır başında #, $ 2'nin betiğe argüman tarafından değiştirilmeyeceği şekilde yapar. Yapmaya çalıştığınız şeyi yapmanın yolu
qsub foo.sh -N <name>
Benim için fune çalışır.
Ben -N komut araçları, ancak sh foo.sh a b
tarafından çağrılan
#!/bin/bash -l
#$ -S /bin/bash
#$ -N $2
echo $1
echo $2
derhal
a
b
Cevabınız için teşekkürler. Ama daha önce eko komutuna geçen argümanın iyi çalıştığından bahsetmiştim. Ancak, ikinci durumda '# $ -N $ 2' $ 2, 'b' olarak değerlendirilmiyor.Bir bağlam vermek gerekirse: bu, güneş ızgara motoru için qsub betiğidir ve '-N' seçeneği işin adını belirler. Bu durumda iş, '$' olarak ayarlanacak ve 'b' olarak istenmeyecek. Yani genel soru parametrelerini '# $ -SomeParameterOption' $ 2'ye nasıl geçirebilirim? Teşekkür ederim. – user1137731
- 1. Argüman parametresinden argüman parametrelerini ayıkla
- 2. C/C++ macro argüman olarak genişletiliyor, argüman olarak argüman
- 3. Varsayılan argüman ile değişken uzunluk argüman listesi?
- 4. ArgParse Python Modülü: Varsayılan argüman için varsayılan argüman değerini değiştir
- 5. C++: bir bilgisayarlı argüman
- 6. Argüman listesi - Unix
- 7. Python fonksiyon argüman listesi
- 8. Grunt: kolonlu argüman
- 9. C typedef const argüman
- 10. Şablon argüman kesinti arızası
- 11. Neden kodlamayı argüman siliyor?
- 12. Argüman eşleştirmelerinin geçersiz kullanımı
- 13. 'NoneType' türünde argüman değiştirilemiyor
- 14. Çok fazla argüman
- 15. Çok fazla argüman hatası
- 16. XCode: İşlev argüman girintisi
- 17. Dosya - hata mesajı argüman
- 18. , bir argüman iki arabirimleri
- 19. constexpr template argüman tuhaflığı
- 20. Şablon argüman adı çarpışma
- 21. kaçının argüman çoğaltılması (...)
- 22. JavaScript - geçersiz argüman IE8
- 23. birden argüman subs vba
- 24. Alma argüman sayısı
- 25. Beslenecek argüman dizisini döndürür.format()
- 26. cv2.imshow() argüman biçimi?
- 27. yapıcılar için şablon argüman indirimi
- 28. Bir Argüman Olarak DataType Gönderiliyor?
- 29. UITapGestureRecognizer'da @selector argüman nasıl iletilir?
- 30. Google Closure neden argüman değiştiriyor?
"# $ -N $ 2" ile neyi kastettiğinizi açıklamanız gerektiğini düşünüyorum. Eğer senaryonuz bir bourne kabuk senaryosuysa, bu bir yorumdur ('# 'ile başlar) ama başka bir şey olarak kastediyorsunuz. – Celada
Zaten bunu açıklamaya çalıştım, Saptamus Prime'a yorum yaz. Bu seçenek, bir küme ortamında iş adını ayarlamak için kullanılır. bkz: http://www.clusterresources.com/torquedocs/commands/qsub.shtml. Doğru, normalde # yorumlar için kullanılır. Ancak # $ -Argument Value sözdiziminde kullanıldığında takip edilmez. Teşekkürler. – user1137731
Eğer soru, qsub'a özgü kabuk metasyntaksıyla ilgiliyse, söz konusu sorudan bahsetmeliydin. Her neyse, gönderdiğiniz link bir 'PBS' direktifinden bahsediyor, ama '# $' den bahsetmiyor, bu yüzden bunun ne anlama geldiğini hala bilmiyorum. Her durumda, "qsub" yönergelerinin 'qsub'nun kendisi tarafından yorumlanmasından dolayı ** betik çalıştırılır, bu yüzden betik çalıştırıldıktan sonra betiğe aktarılan argümanların girilmemesi mantıklı olur bu yönergelerin işlenişine. Sanırım işin adı için statik bir dizge sağlaman gerekiyor. – Celada