Patrzę na skrypt tcsh, który ma następującą linię shebang:
#!/bin/tcsh -fb
# then executes some commands
Co robi -b?
Ze strony podręcznika:
-b Wymusza „przerwę” w przetwarzaniu opcji,powodując dalsze argumenty powłoki być traktowane jako argumenty nie będące opcjami. Pozostałe argumenty nie będą sprzeczne preted jako opcje powłoki. Może to być wykorzystane do przekazania opcji do skryptu powłoki za pomocą dezorientacja lub możliwy podstęp. Powłoka nie uruchomi skryptu ID użytkownika zestawu bez tej opcji.
Ale naprawdę nie rozumiem, co to znaczy ...
Przykład byłby świetny.
Dzięki.
Odpowiedzi:
2 dla odpowiedzi № 1Powiedzmy na przykład, że masz skrypt o nazwie --help
i chcesz go wykonać za pomocą tcsh
:
tcsh --help
To oczywiście nie zadziała. The -b
siły tcsh
przestać szukać argumentów i traktować resztę wiersza poleceń jako nazwy plików lub argumenty skryptów. Aby uruchomić powyższy dziwnie nazwany skrypt, możesz to zrobić
tcsh -b --help