RSnapshot設定の自動修正:スペースをタブに置き換える

RSnapshot設定の自動修正:スペースをタブに置き換える

rsnapshot構成は非常にトリッキーです。コマンドはスペースの代わりにタブで区切る必要があります。

使用する場合

rsnapshot configtest

エラーが表示されますが、自動的に修正し、問題のある領域の複数のスペースをタブに置き換えますか?

sed を使用できます。

sed s/\s+/\t/g

ただし、これによりファイル全体が変更されます。

答え1

インターネット上の任意のファイルに基づいています(1そして2)、コマンドのように見えるテキスト(文字とアンダースコア)の後のスペースをタブに置き換えるsedステートメントを思い出しました。

sed 's/^\([a-z_][a-z_]*\)  */\1\t/' input > output

エスケープされた角かっこはコマンド(行の先頭(^)で始まる1つ以上の文字とアンダースコア)をキャプチャし、コマンドの後に1つ以上のスペースが必要です。これらのパターンは、一致するコマンド(\1)とタブ文字に置き換えられます。このパターンは一致します飛び越えるその行をコメントアウトします(#文字やアンダースコアではないため)。

関連情報