特定のコンテキストから文字を削除する(シェルスクリプトを使用)

特定のコンテキストから文字を削除する(シェルスクリプトを使用)

したがって、次の名前のリストを含むファイルがあります。

Thomas Newbury
Calvin Lewis
E. J. Frederickson
Lamar Wojcik
J.C. Lily
Lillian Thomas

私は最終的にそれらを名前と姓の長いリストに分けようとします。しかし、その前に「EJ」を「EJ」に変えたいのですが、bashで何をすべきかわかりません。

「EJ」と一致することはわかっていますが、2"[A-Z]+. [A-Z]+."点文字の間のコンテキストからのみスペースを削除できるコマンドは何であるかわかりません。

ベストアンサー1

私はこれがGNUで動作すると思いますsed

sed -E 's/^([A-Z]+\.)[[:blank:]]([A-Z]+\.)/\1\2/' file

おすすめ記事