Linuxでは、rename
複数のディレクトリの名前を変更するために使用されます。大文字で始まるディレクトリの名前を小文字に変更し、_
最初の文字の前に特殊文字を追加したいと思います。
Myfile
たとえば、名前を次のように変更したいとします。_myfile
これまで私が思いついた最高は次のとおりです。
rename -n 'y/[A-Z]/[a-z]' *
ただし、この正規表現に私の役割を追加すると、次のエラーが発生します。
rename -n 'y/[A-Z]/_[a-z]' *
Replacement list is longer than search list at (eval 90) line 1.
正規表現に特殊文字を追加するには?
答え1
する:
rename -n 's/^([A-Z])/_\L$1/' */
^([A-Z])
キャプチャされたグループ1で始まるすべての大文字と一致し、含まれます。代替では、キャプチャさ
\L
れたグループ1()を小文字に置き換えます。_
*/
ディレクトリのみ一致
-n
実際の名前変更操作を実行するには、削除してください。
rename 's/^([A-Z])/_\L$1/' */