次の行形式の複数のタグを含むファイルがありますが、1つのファイル内のすべてのインスタンスで指定されているようにyyyy/mm/dd
タグを変更したいと思います。例えば/
-
yyyy-mm-dd
これから:<tag k='start_date' v='2011/01/01' />
これまで:<tag k='start_date' v='2011-01-01' />
Mac 10.11.6を使用しています。
ベストアンサー1
sed
あなたはそれを使用することができます
$ sed -E 's|([0-9]{4})/([0-9]{2})/([0-9]{2})|\1-\2-\3|g' file
試してみてください。
macOSまたはFreeBSDを使用してファイルを内部で編集するには、-i ''
オプションを追加します。他のほとんどのsed
実装には-i
別々の実装が必要です(両方とも-i.back
機能し、.back
拡張機能を使用して元のバージョンを保存します)。sed
内部編集をサポートしていないシステムでは、(このようにインスピレーションを与えた)perl -pi -e
代わりに使用できます。sed -E
sed -i