Ich habe den folgenden Befehl, den ich von einem Skript aus ausführe. In der Skriptdatei steht er in dieser etwas langen Zeile:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html -x /var/www/html/wp-content/cache
So weit, so gut, aber ich möchte diesen Befehl in einige Teile aufteilenhorizontal, wie:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html || -x /var/www/html/wp-content/cache
Wohin ||
sollen die nicht ausgeführten Zeichen kommen, die nur zur „ästhetischen“ Aufteilung des Befehls in zwei Teile verwendet werden?
Oder vielleicht sogar vertikal wie:
sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html
-x /var/www/html/wp-content/cache
Was ist Ihrer Meinung nach der beste Weg, dies zu erreichen?
Antwort1
Wenn ich richtig verstehe, was Sie erreichen möchten, sollten Sie verwenden \
. Dadurch können lange Befehle in mehrere Zeilen aufgeteilt werden.
sudo zip -r \
/var/www/html/html-$(date +\%F-\%T-).zip \
/var/www/html \
-x /var/www/html/wp-content/cache
Beachten Sie, dass Leerzeichen vor Schrägstrichen wichtig sind. Shells fügen sie nicht automatisch ein, daher verwenden Sie einen Befehl wie
echo\
"asdf"
führt wahrscheinlich zu einem „Befehl nicht gefunden“ (@ilkkachu).