Podczas wywoływania długich, obciążających przełączniki poleceń, dobrą praktyką jest pisanie ich w skryptach powłoki. Czy istnieje prosty sposób komentowania wierszy w takich skryptach? Próbowałem następujących metod, ale żadna z nich nie działa.
# the \ is also commented out, resulting in "command" and "--good-switch".
command \
#--bad-switch \
--good-switch \
# seems to send an extra argument to the command
command \
\ #--bad-switch \
--good-switch
\
ucieka od następnego znaku, który „ukrywa” nowe linie, ale spacje są znaczące).Odpowiedzi:
Może to być opcja: zapisz polecenie i argumenty w tablicy, a następnie wykonaj je później
źródło
bash
tylko…Zawsze komentowałem te zaraz po poleceniu.
źródło
Problem polega na tym, że ukośniki są usuwane przed parsowaniem wiersza, więc pierwsze polecenie jest przetwarzane tak, jakbyś napisał
command #--bad-switch --good-switch
. Jeśli masz naprawdę długą sekwencję poleceń, możesz na przykład napisać blok komentarza wiersz po wierszu powyżej lub poniżej, wyjaśniając je kolejno, lub możesz zapisać parametry w zmiennej (chociaż często powoduje to cytowanie problemów z znaki specjalne).źródło
--good-switch
jest interpretowane jako polecenie.Zobacz odpowiedź Digital Ross .
Zobacz także pytanie, które właśnie opublikowałem, bash polecenie wieloliniowe z komentarzami po znaku kontynuacji .
Byłaby to przydatna funkcja. Szkoda, że nie ma standardowego wsparcia.
źródło
komentarz hamuje łańcuch połączonych linii, więc najprostszym rozwiązaniem byłoby przeniesienie komentowanych linii na końcu listy.
Jeśli nie chcesz zmieniać kolejności, możesz użyć
:
polecenia (narzędzie dwukropka, które nic nie robi), aby utrzymać nienaruszone połączone linie:Testowałem z tym:
źródło