介紹各種在 Bash 指令稿中建立與輸出多行字串的方法與範例程式碼。
以下整理了在 Bash 指令稿中各種用來建立或輸出多行字串的方法。
echo 指令使用多個 echo 指令,每一行 echo 指令負責輸出一行字串:
#!/bin/bash # 輸出多行字串 echo "usage: myscript [--level <n>] [--help] [--version] input" echo echo "Example: " echo " myscript --level 2 myfile.txt"
usage: myscript [--level <n>] [--help] [--version] input Example: myscript --level 2 myfile.txt
echo 多行字串以單一個 echo 指令輸出多行字串:
#!/bin/bash # 輸出多行字串 echo "usage: myscript [--level <n>] [--help] [--version] input Example: myscript --level 2 myfile.txt"
cat 多行字串使用 cat 指令搭配 here document 的方式輸出多行字串:
#!/bin/bash # 輸出多行字串 cat << EOF usage: myscript [--level <n>] [--help] [--version] input Example: myscript --level 2 myfile.txt EOF
建立一個多行字串的變數,再將此變數輸出:
#!/bin/bash # 設定多行字串變數 help="usage: myscript [--level <n>] [--help] [--version] input Example: myscript --level 2 myfile.txt" # 輸出多行字串 echo "$help"
以 read 將多行字串讀取至變數中,再將此變數輸出:
#!/bin/bash # 讀取多行字串至 help 變數 read -d '' help <<- EOF usage: myscript [--level <n>] [--help] [--version] input Example: myscript --level 2 myfile.txt EOF # 輸出多行字串 echo "$help"
printf 輸出多行字串以 printf 一次輸出多行的字串:
#!/bin/bash # 輸出多行字串 printf "usage: myscript [--level <n>] [--help] [--version] input\n\nExample:\n myscript --level 2 myfile.txt\n"
參考資料:StackOverflow