ファイルを "cat"してコメント化された行を削除する方法は?

ファイルを

catアーカイブphp.iniして削除する方法があるかどうか疑問に思います;

たとえば、ファイルに次の内容が含まれているとします。

;   - Show all errors, except for notices
;
;error_reporting = E_ALL & ~E_NOTICE
;
;   - Show only errors
;
;error_reporting = E_COMPILE_ERROR|E_ERROR|E_CORE_ERROR
;
;   - Show all errors except for notices
;
error_reporting  =  E_ALL & ~E_NOTICE

正しいコマンドを実行すると、cat | {remove comments command}次のようになります。

error_reporting  =  E_ALL & ~E_NOTICE

ノート- これが最善の方法だと思いますが、cat他のユーティリティ(たとえば、、など)を使用したawk回答に実際に満足しています。sedegrep

ベストアンサー1

grepを介してファイルをパイプする必要はありません。 grepはファイル名をコマンドライン引数として使用します。

grep -v '^#' file1 file2 file3

#文字で始まるすべての行が印刷されます。コメント文字を必要に応じて変更できます。

コメント文字が複数ある場合(行の先頭にあると仮定)

egrep -v '^(;|#|//)' filelist

おすすめ記事