1
私はMacを使用しています。私はバイトコードrun
をコンパイルしている、それはのようなコマンドラインで文字列入力で動作することができます:スペースは、txtファイルとコマンドラインで同じ方法で認識されません。
./run "Here is a text input"
run
をテストするには、私はinputs.txt
を書き、1行が1つの入力を表し、
"input1"
"This is input 2"
"input 3"
とは、ここにあるtest.sh
:
#!/bin/bash
while IFS='' read -r line || [[ -n "$line" ]]; do
echo "Text read from file: $line";
./run $line
done < inputs.txt
問題は、テストは、入力ラインのために失敗した、ということですコマンドラインで同じ行をテストすることはできますが、スペースを含んでいます。
だから、inputs.txt
とコマンドラインでは、スペースは同じと解釈されません。
スペースを作るために何をすればよいのか誰でも知っていますか?inputs.txt
はコマンドラインと同じ方法で解釈されますか?おそらくinputs.txt
の形式を変更する必要がありますか?
が引用問題になる可能性があります。入力ファイルの引用符を取り除き、スクリプトに追加します: './run" $ line "' – jdigital