2016-07-21 17 views
0

私はMac bashコンソールです。 Macでの作成時間に基づいてディレクトリ内のファイルの名前を変更する方法

私は(ここでも、スタックオーバーフローで)アルロットをGoogleで検索して、bashコマンドを経由してその作成タイムスタンプと、ディレクトリ内の各ファイルの名前を変更 するために、スクリプトの多くを試してみましたが、どれもdatestatコマンドので、働いていませんLinuxではなくMacでは異なっています。また、私はexifコマンドを持っていません。

私はこの(またはとにかく似た)のような形式で名前を変更したい:YYYYMMDD-HHMM

誰も私を助けることができますか?おかげでたくさん事前に

EDIT

は、私はこの(またはとにかく似た)のような形式で名前を変更したいのですがthisthisthis

EDIT 2

を試してみました:YYYYmmDD-HHMM.jpg(jpgはファイル拡張子の例です、ファイル拡張子を失いたくないです)

EDIT 3

現在、このコマンドは部分的に動作します(常にJPG拡張子を適用)

for f in `ls`; do mv "$f" "$(stat -t %Y%m%d-%H%M $f | awk -F"\"" '{print $8}').jpg"; done 
+0

デフォルトのMac OS XのユーティリティやGNU coreutilsがインストールされていますか? – Inian

+0

@Inian、どうすれば確認できますか? – ddb

+0

'stat --version'と入力して、表示されている出力を貼り付けます。 – Inian

答えて

1
mv fileName `stat -f %SB -t %Y%m%d-%H%M fileName` 

全ファイルリスト

の間でループし、ここでEDIT

最終的な解決策、

for f in `ls`; 
    do mv "$f" "`stat -f %SB -t %Y%m%d-%H%M $f`.`echo $f | cut -d '.' -f 2`"; 
done 
+0

ファイル拡張子が失われる、どうすればそれを防ぐことができますか? – ddb

+0

私の質問を編集しました。申し訳ありません – ddb

+0

あなたのファイル名は 'name.extension'の形式であると仮定して、' echo fileName |カット-d '。' -f 2 ' – hflzh

関連する問題