텍스트 파일에 하나보다 많은 쉘 스크립트가 있습니까?

텍스트 파일에 하나보다 많은 쉘 스크립트가 있습니까?

저는 대학에서 쉘 스크립팅에 대한 입문 UNIX 과정을 듣고 있는데 단일 텍스트 파일에 여러 쉘 스크립트를 가질 수 있는지 궁금합니다. 예를 들어 Pascal에서 다음과 같은 경우가 있습니다.

var…

begin
end.
//another program which will be ignore

컴파일러는 일정 기간 이후의 모든 내용을 무시합니다. Shell이 ​​이와 같은 작업을 수행할 수 있습니까? 쉘 예제를 많이 봐야하고 u+x 권한 걱정 없이 같은 스크립트를 실행하려면 그냥 같은 이름의 스크립트를 실행하기 위해 많은 파일을 여는 것이 별로 편리하지 않기 때문에 이렇게 묻습니다. 언제든지 다음 코드 예제로 이동합니다. 따라서 다음과 같을 수 있습니다. 종료하세요. 더 이상 읽지 마세요. ? 이런 어리석은 질문에 답변해 주셔서 미리 감사드립니다.

답변1

위의 목적을 위해(예: 특정 줄에서 스크립트를 중지하려면) exit이 시점에서 간단히 break를 사용하면 됩니다. 이는 실제 생활에 적용하기에는 다소 조악해 보일 수 있지만 학습 목적으로는 적합합니다.

설명하다:

#!/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

답변2

다음 구조를 사용하여 : <<"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

관련 정보