Shell

比一對一文本文件更多的 shell 腳本?

  • October 25, 2014

我正在為我大學的 UNIX 入門課程學習 shell 腳本,我很好奇是否可以在一個文本文件中包含多個 shell 腳本。我的意思是,例如在帕斯卡中,當你有:

var…

begin
end.
//another program which will be ignore

編譯器在句點結束後忽略任何內容。這樣的事情可以用殼牌完成嗎?我問是因為我必須經歷很多 Shell 範例並且打開許多文件不是​​很方便,有了這個我可以執行相同的腳本而不用擔心 u+x 權限,只要我去執行同名的腳本到下一個程式碼範例。所以有可能會有一些東西會說:結束,不要再讀了。? 提前感謝您回答這個愚蠢的問題。

出於上述目的 - 即在任何給定行停止腳本 - 您可以簡單地使用exit在這一點上中斷。對於任何現實生活中的應用程序,這似乎有點粗糙,但出於學習目的,它應該適合。

說:

#!/bin/sh

# now I am working here
do_something
exit

# this is old, do not execute
did_something
exit

# this is even older, do not execute
did_something_long_ago

您可以使用: <<"SOMEWORD" ... SOMEWORD替代註釋的結構#

##### The following "code block" is effectively ignored
: <<"SOMEWORD"
/etc/init.d/mydatabase clean_stop
mydatabase_dump /var/db/db1 /mnt/fsrv0/backups/db1
logger -t SYSHALT "System halt: pre-shutdown actions done, now shutting down the system"
shutdown -h NOW
SOMEWORD
##### The ignored codeblock ends here

引用自:https://unix.stackexchange.com/questions/156827