«shebang» etiketlenmiş sorular

Sorunuz bir komut dosyasının başlangıcında `#!` -Dize ile ilgili ise / shebang etiketini kullanın

3
`#!` Sözdiziminin davranışı neden POSIX tarafından belirtilmiyor?
Gönderen Shell Komut Dili POSIX şartnamenin sayfa: Kabuk komutları dosyasının ilk satırı "#!" Karakterleriyle başlarsa, sonuçlar belirtilmez. POSIX'in davranışı neden #!belirtilmedi? Bu kadar taşınabilir ve yaygın olarak kullanılan bir şeyin belirtilmemiş bir davranışa sahip olacağını şaşırtıcı buluyorum.
17 shell  posix  shebang 


3
Hangi kabuk yorumlayıcısı hiç betiği olmayan bir senaryo çalıştırır?
Hesabım için varsayılan kabuğun zsh olduğunu varsayalım, ancak terminali açtım ve prac002.shbash'yi çalıştırdım ve komut dosyasını, zsh veya bash'ı çalıştırmak için hangi kabuk yorumlayıcısını kullanacağım? Aşağıdaki örneği düşünün: papagolf@Sierra ~/My Files/My Programs/Learning/Shell % sudo cat /etc/passwd | grep papagolf [sudo] password for papagolf: papagolf:x:1000:1001:Rex,,,:/home/papagolf:/usr/bin/zsh # papagolf's default shell is zsh …


6
Betik başladıktan sonra tercüman seçin, örneğin hashbang içinde / else içinde
Bir komut dosyasını çalıştıran yorumlayıcıyı dinamik olarak seçmenin bir yolu var mı? İki farklı sistemde çalıştırdığım bir senaryom var ve kullanmak istediğim tercüman iki sistemde farklı yerlerde bulunuyor. Ne kadar bitirmek zorunda kaldım her zaman hashbang hattı değiştirmek. Ben bunun mantıksal eşdeğer bir şey yapmak istiyorum (Bu kesin yapı imkansız …

6
Bourne kabuğu bir dağıtımda yoksa hashbang / bin / sh komutunu kullanmak doğru mudur?
Genellikle, kabuk komut komut dosyasının ilk satırında aşağıdaki yorumu içerir: #!/bin/sh. Yaptığım araştırmalara göre, buna "karma patlama" deniyor ve geleneksel yorum. Bu yorum Unix'e bu dosyanın Bourne Shell tarafından dizinin altında yürütüldüğünü bildirir /bin. Sorum o noktada başlıyor. Şimdiye kadar bu yorumu beğenmedim #!/bin/bash. Her zaman öyledir #!/bin/sh. Ancak, Ubuntu …

2
Çift tire (-) ile başlayan bu şey nasıl çalışır?
RosettaCode sayfasında aşağıdaki türden bir şey buldum: --() { :; }; exec db2 -txf "$0" Db2 için ve Postgres için de benzer bir şey. Ancak, bütün çizgiyi anlamıyorum. Çift çizgi SQL'de bir yorum olduğunu biliyorum ve bundan sonra dosya kendini dosya olarak geçen bazı parametrelerle Db2 yürütülebilir çağırır. Peki ya …


6
Çok fazla shebang (script beyanı) satırı - miktarlarını azaltmanın herhangi bir yolu var mı?
Yaklaşık 20 küçük .shdosyadan oluşan bir projem var . Bu "küçük" olarak adlandırıyorum çünkü genellikle hiçbir dosya 20'den fazla kod satırına sahip değil Modüler bir yaklaşım izledim çünkü Unix felsefesine sadık kaldım ve projeyi sürdürmem daha kolay. Her .shdosyanın başlangıcına koydum #!/bin/bash. Basitçe söylemek gerekirse, senaryo bildirimlerinin iki amacı olduğunu …


1
Böyle bir dosya veya dizin yok ama görebiliyorum!
WinSCP kullanarak başsız bir ahududu PI bir python komut dosyası çalıştırmak ve aşağıdaki hata iletisini alıyorum: Command '"./areadetect_movie_21.py"' failed with return code 127 and error message /usr/bin/env: python : No such file or directory. Terminalden çalışmayı denediğimde: : No such file or directory. Ben aynı dizinde, aynı python shebang, aynı …

2
#! / Usr / bin / env bash neden sistemimde çalışmıyor?
Şikayet ettikleri bazı kurulum komut dosyalarını çalıştırırken bazı sorunlarla karşılaştım bad interpreter. Bu yüzden önemsiz bir örnek verdim ama sorunun ne olduğunu anlayamıyorum, aşağıya bakın. #!/usr/bin/env bash echo "hello" Yukarıdaki komut dosyasını çalıştırmak aşağıdaki hatayla sonuçlanır [root@ech-10-24-130-154 dc-user]# ./junk.sh bash: ./junk.sh: /usr/bin/env: bad interpreter: No such file or directory /usr/bin/envDosya, …


1
shebang hat cr-lf ile çalışmıyor
Neden aşağıdaki temel komut dosyalarının shebang bölümleri çalışmıyor: $ cat hello.sh #! /bin/sh echo Hello $ ./hello.sh bash: ./hello.sh: /bin/sh^M: bad interpreter: No such file or directory $ cat hello.py #! /usr/bin/env python3 print("Hello") $ ./hello.py : No such file or directory tercümanı elle çağırmak çalışırken: $ sh hello.sh Hello …
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.