多くのファイル内のテキストの塊を削除しようとしています。このグロブはファイルの途中に挿入されます。
私のbashスクリプトでは、AWKを使用して削除しようとしています。
コマンドは次のとおりです。
awk '/</SCRIPT>/{p=1;print}</script>/{p=0}!p'
どこ</SCRIPT>
が始まりでどこが終わりか。
目標は、 awk を使用して、ファイル内の で始まり、</SCRIPT>
で終わるすべてのテキスト</script>
、およびその間のすべてのテキストを削除し、上部と下部の html をそのままにしておくことです。
スクリプトの最初と最後に -x と +x を追加して、どこで失敗しているかを確認しました。
awkは私にこれを教えてくれます:
awk: /</SCRIPT/>{p=1;print}/</script>{p=0}!p
awk: ^ syntax error
SS64 は私に次のように伝えています。
gawk' は、次のいずれかの後の改行を無視します。
, { ? : || && do else"
そのため、awkコマンドで「<」を分離する必要があると思いますが、厄介な変数としてリストされていません...
これを行うにはどうすればよいですか、なぜ awk はこのように文句を言わなかったのですか?
awk: /</SCRIPT/>{p=1;print}/</script>{p=0}!p
awk: ^ syntax error ^ syntax error