2016-07-28 50 views
1

這裏是一個叫command.sh簡單的腳本:bash - 如何將換行符傳遞給腳本?

#!/bin/bash 

echo "I received: |$1|" 

當我把它叫做一個換行符,它不會將它輸出:

$ ./command.sh foo\ 
> bar 
I received: |foobar| 

爲什麼改行得到丟失?

回答

5

打電話給你的腳本:

./command.sh 'foo 
> bar' 

通過將\換行符之前你只是開斷電流命令行並沒有真正通過換行符腳本。

如果你想這樣做的單行然後使用:

./command.sh $'foo\nbar' 
+1

感謝您的快速答覆。但是,我重新提出了我的問題。你可以請看看它在這裏:http://stackoverflow.com/q/38642827/363573? – Stephan