ファイルの各行でループを実行します。
if [ -e "/tmp/history" ]; then
while read line; do
connect.sh $line \
&& break
done </tmp/history
fi
このファイルの形式は次のとおりです。
user\ name user\ password
これにより、各行に$1
と$2
forが含まれますconnect.sh
。
$line
しかし、私のwhileループはに渡される前に改行文字を失うようになりconnect.sh
ます。user\ name
user name
改行を維持するためにwhileループを修正する方法はありますか?
答え1
-r
変数にフラグと二重引用符を追加することで問題を解決できました。
if [ -e "/tmp/history" ]; then
while read -r line; do
connect.sh "$line" \
&& break
done <"/tmp/history"
fi