0

この投稿 (複数のファイルで特定の用語を検索して置換する) と同様の解決策が必要ですが、各区切りタブ テキスト ファイルの最初の列にある句読点文字の置換が必要です。

例:

file1.txt
afile2.txt
3file.txt
...

他のすべてのファイル名は .txt で終わります

txt ファイルの形式には、列の間に「タブ」があり、次のようになります。

aaaa:bbb    second_column    third_column
w:xyz    another_second_column    another_third_column

:最初の列の を などの別の文字に置き換える必要があり##ます。

助けてください。

perl は:文字を列カッターとして扱いますか?

4

1 に答える 1

3

行の最初のタブ区切り列の最初のコロンを次のように置き換えます##

perl -i.bak -pe's/^([^\t:]*):/$1##/' *.txt

現在のディレクトリ内のすべての .txt ファイルを処理し、バックアップ バージョンを .bak ファイルに保存します。

キャプチャを必要としないバリアントを次に示します (コメントで @Brad Gilbert が提案)。

perl -i.bak -pe's/^[^\t:]*\K:/##/' *.txt

どちらのスクリプトも同じ結果を生成します。

于 2011-10-28T13:22:47.120 に答える