・gitbashを使ってリネームをします。
・カレントディレクトリは目的とするgitリポジトリです。
・”04A_002”→"A04_002"と名前を変更したい場合は以下。
$ ls |grep A_ | sed -e 's/\(..\)A_\(.*\)/\1A_\2\nA\1_\2/' |xargs -n 2 git mv
今回は "ls |grep A_ "で変更対象のファイル名をリストアップ。sedコマンドでリストのファイル名を使い置換。置換後の文字列の間に\nを入れて"リネーム前"と"リネーム後"の二つのファイル名を作ってしまうのがポイントです。リスト項目を順番に処理するxargsコマンドに"リネーム前"と"後"の二つの名前を渡します。xargsで引数を二つごとに取り出すオプションが"-n 2"です。最後にgit mvをかけます引数を任意の場所に置くときはshコマンドを使い以下のようにします
$ ls |grep A_ | sed -e 's/\(..\)A_\(.*\)/\1A_\2\nA\1_\2/' |xargs -n 2 sh -c 'git mv $0 $1'
■参考・xargsコマンドで覚えておきたい使い方・組み合わせ7個(+1個)
烏野の箱庭 | …動画・絵・漫画・脚本などの作品紹介 |
烏野博史動画 | …広告・実験・講習用映像のyoutubeチャンネル |
うのひろし日々描描 | …作画配信のyoutubeチャンネル |
UNOのPixiv | …絵、デザイン資料、漫画、実験画像 |
karsauno10のTwitter | …考え、宣伝 |