別の文字列で二重引用符で囲まれたハイフンを印刷する方法

別の文字列で二重引用符で囲まれたハイフンを印刷する方法
 cat inv_summary_1.txt  | while read -r aLine
do
    F1=`echo "$aLine" | cut -d "," -f1`
    F2=`echo "$aLine" | cut -d "," -f2`
    echo   " 0 RUN_ID  STR [0] \"${F2}\" "
done

191245204696,REG-00000000001

上記の区切り文字 ""を持つ inv_summary_1.txt ファイルがあり、事前定義された値を持つ 2 番目のフィールドを印刷しようとしています。

0 RUN_ID STR[0]

191245204696,REG-00000000001

出かけたい

0 RUN_ID STR[0]"REG-00000000001"

しかし、私が得るものは

” RUN_ID STR [0] “REG-00000000001

二重引用符が正しくありません。 echoのお問い合わせ最初の2文字も失われます。

助けてください。 「-」はUnixシェルスクリプトに何らかの意味があると思います。助けてください。

注:私はLinux 4.1.12-94.3.9.el7uek.x86_64#2 SMP Fri Jul 14 20:09:40 PDT 2017 x86_64 x86_64 x86_64 GNU / Linuxを使用しています。

ベストアンサー1

テキストを解析するには、シェルの代わりに専用ツールを使用することをお勧めしますawk

awk -F, '{print "0 RUN_ID STR [0] \""$2"\""}' < input

結果は次のとおりです。

0 RUN_ID STR [0] "REG-00000000001"

おすすめ記事