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