複数のファイルの名前を変更したい(拡張子を追加したい)。zshのzmvを次のように使用できます。
autoload zmv
zmv -n '(**/)(*)' '$1$2.myextension'
しかし、これにより、現在のディレクトリ内にあるすべてのdirの名前も変更されます...ファイルのみの名前を(再帰的に)変更し、dirの名前変更を回避するにはどうすればよいですか?
ここから:
# Rename names of all files under the current Dir to lower case, but keep Dir names as-is.
$ zmv -Qv '(**/)(*)(.D)' '$1${(L)2}'
だから私(.D)
はあなたが必要なものだと思います。「ピリオド」は、通常のファイル(ディレクトリではない)での一致を示しD
、オプションを有効にしGLOB_DOTS
ます。