介紹各種在 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