[英]echo add a newline between two strings
我終於在bash中回應了兩個字符串之間的新行。
加上echo包含\\ n的字符串。 如
m=$'line1\nline2'
n=line3
echo "$m" ""$'\n'"" $n
給我
line1
line2
line3
(我在$ n之前離開了空間以使其更清晰。)
有沒有更好的方法呢?
根據你的shell, echo
帶有一個-e
標志,用於打印轉義字符。
echo -e "Hello\nWorld"
或者,您可以使用printf
,但它不提供自己的尾隨換行符,您需要確保占位符不會出現在您的文本中:
printf "Hello\nWorld\n"
只需使用printf
就可以在有新行時完全控制:
printf "%s\n%s" "$var1" "$var2"
#---------^^
例如:
$ s1="hello how are you"
$ s2="I am fine thanks"
$ printf "%s\n%s\n" "$s1" "$s2"
hello how are you
I am fine thanks
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.