Unix のテキスト ファイルからレコードを取得する必要があります。区切り文字は複数のブランクです。例えば:
2U2133 1239
1290fsdsf 3234
これから、抽出する必要があります
1239
3234
すべてのレコードの区切り文字は常に 3 つの空白になります。
これを UNIX スクリプト (.scr) で実行し、出力を別のファイルに書き込むか、do-while ループへの入力として使用する必要があります。私は以下を試しました:
while read readline
do
read_int=`echo "$readline"`
cnt_exc=`grep "$read_int" ${Directory path}/file1.txt| wc -l`
if [ $cnt_exc -gt 0 ]
then
int_1=0
else
int_2=0
fi
done < awk -F' ' '{ print $2 }' ${Directoty path}/test_file.txt
test_file.txt は入力ファイルで、file1.txt はルックアップ ファイルです。しかし、上記の方法は機能せず、 awk -F の近くで構文エラーが発生します
出力をファイルに書き込もうとしました。以下はコマンドラインで機能しました:
more test_file.txt | awk -F' ' '{ print $2 }' > output.txt
これは機能しており、コマンドラインでレコードを output.txt に書き込んでいます。ただし、同じコマンドは unix スクリプトでは機能しません (.scr ファイルです)。
どこが間違っているのか、どうすれば解決できるのか教えてください。
ありがとう、
ヴィサフ