[解決済み] perl で awk コマンドを実行する
2022-02-18 17:22:47
質問内容
以下のようなタブ区切りファイル(ダミー)があります。
a b
a b
a c
a c
a b
を書こうとしているのですが
awk
コマンドを、file.txt を作成する perl スクリプトの中で実行します。
awkコマンドは.
$n=system(" awk -F"\t" '{if($1=="a" && $2=="b") print $1,$2}' file.txt|wc -l ")
Error :
comparison operator :error in '==' , ',' between $1 and $2 in print }'
awk スクリプトはコマンドラインでは正常に動作していますが、スクリプト内部で実行するとエラーが発生します。
awk コマンドに構文エラーは見当たりません。
どのように解決するのですか?
を実行することで何を実現しようとしているかはさておき。
awk
の中から
perl
(後者自体を使っても実現可能なので)このような場合は
q
演算子を使用します。
$cmd = q(awk -F"\t" '{if($1=="a" && $2=="b") print $1,$2}' file.txt | wc -l);
$n = system($cmd);
ダブルクォートを使用すると、変数が挿入されるので、それをエスケープする必要があることに注意してください。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン