將單行命令拆分為兩部分,使其在美觀上更加“結構化”

將單行命令拆分為兩部分,使其在美觀上更加“結構化”

我有以下從腳本運行的命令。在腳本文件中,它被寫在這個有點長的行中:

sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html -x /var/www/html/wp-content/cache

到目前為止一切順利,但我想把這個命令分成幾個部分水平地, 喜歡:

sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html || -x /var/www/html/wp-content/cache

未執行的字元應該出現在哪裡,||這些字元僅用於將命令“美學”分割為兩部分。

或者甚至可能是垂直的:

sudo zip -r /var/www/html/html-$(date +\%F-\%T-).zip /var/www/html 
-x /var/www/html/wp-content/cache

您認為實現這一目標的最佳方法是什麼?

答案1

如果我正確理解您想要實現的目標,您應該使用\.這允許將長命令分成多行。

sudo zip -r \
    /var/www/html/html-$(date +\%F-\%T-).zip \
    /var/www/html \
    -x /var/www/html/wp-content/cache

請記住,斜線之前的空格很重要。 shell 不會自動插入它們,所以命令如下

echo\
"asdf"

可能會導致「找不到命令」(@ilkkachu)。

相關內容