特殊文字の使用に問題があります。タブで区切られたテキスト ファイルを解析しています。特定のパラメーターが true の場合、プログラムで行の最初の単語に「*」を追加したいと考えています。
if ($Var < $3) $1 = \*$1
これを実行するたびに、行末ではないというエラーが表示されます。
特殊文字の使用に問題があります。タブで区切られたテキスト ファイルを解析しています。特定のパラメーターが true の場合、プログラムで行の最初の単語に「*」を追加したいと考えています。
if ($Var < $3) $1 = \*$1
これを実行するたびに、行末ではないというエラーが表示されます。
2 つのことですが、テストするコンテキストがこれ以上ない場合は、あまり役に立ちません。
$Var上記で Var=3 のように設定した場合にのみ意味があります。次に、gawk が $3 を $3 の値に評価するとは思わない。その式の反対側は< $3、3 番目のフィールドの値に展開されます。シェル環境から $Var を取得している場合、gawk スクリプトにその値を「認識」させる必要があります。
awk '{ ..... if ('"$Var"' < $3) $1= "*" $1 .....}
文字列リテラル「*」を前に追加したい場合は、次のようにしたほうがよいでしょう$1 = "*" $1
サンプル入力、期待される出力のサンプル、実際の出力、およびエラー メッセージがないので、ここで 20 の質問をプレイします。これらのコメントで問題が解決しない場合は、上記の質問を編集してこれらの項目を含めてください。
PS StackOverflowへようこそ。私たちが通常ここで行っている 3 つのことを思い出させてください。/2vycnvr , 3) 良い Q&A が表示されたら、灰色の三角形を使って投票してください。彼らの知識。また、問題をよりよく解決する答えがある場合は、チェックマーク記号を押して受け入れることを忘れないでくださいhttp://i.imgur.com/uqJeW.png