フォローするこの問題テキストから改行を削除するには、次のようにzshエイリアスに変換したいと思います。
alias striplines=' awk " /^$/ {print \"\n\"; } /./ {printf( \" %s \",$0);}"'
awkスクリプトで引用符をエスケープしようとしましたが、次のエラーが発生しました。
awk: (FILENAME=bspsrobustness FNR=1) fatal: division by zero attempted
(ファイル名はbspsrobustness
)
私が望むことをする方法はありますか?私はこれをzshエイリアスの代わりにawkスクリプトに置き換えることができると思います。これが最善の選択ですか?
ベストアンサー1
エイリアスの代わりにzsh関数を使用できます。引用の輪を飛び越える必要はありません。
striplines() {
awk '... awk body "with quotes" ...' "$@"
}