csvファイルの先頭行にはヘッダファイルがあります。この最初の行を読んでから、それを解析して、私が探している要素があるかどうかを調べる必要があります。 最初の行には4つの要素があります。 1. HDR 2.今日の日付3.日付から4.現在まで。UNIXシェルを使用して行を解析した後に行を解析する方法
ここでは最初の行を取得するために使用したコードです。
read -r header < "1" -- this game me the first row into header variable.
この 'ヘッダー'変数を読み取って、さらに行を分割しようとしました。
read f1 f2 f3 < “$header”
echo "OS is : $f1"
echo "Company is: $f2"
echo "Value is : $f3"
値が表示されなくなります。理由は 'ヘッダー'が文字列として入力されない可能性があると私は思う。
私はUNIXシェルスクリプトの初心者です。助けてください。
'$のheader'には何ですか?デバッグ中に '#!/ bin/bash -vx'でスクリプトを起動しましたか?どうしてあなたは[awk](https://www.gnu.org/software/gawk/)を使用しないのですか?あなたの質問を編集して改善してください... –
あなたはスクリプト全体とその入力を表示しません。[MCVE]を編集して改善してください。 –
他のコメントとは別にもう1つコメントしてください。私はどのように解析したいか分かりませんが、特殊な場合を除いてPOSIXシェルは、文字列の解析にはあまり便利ではありません(たとえば、正規表現が利用できないなど)。他のシェルに切り替えることをお勧めします(私はZshが好きですが、ここでもbashが便利だと思います)。まったく別のプログラミング言語(Ruby、Perl、awk、Pythonなど)に切り替えることをお勧めします。 – user1934428