ファイル名を任意のGUIDに変更するには?

ファイル名を任意のGUIDに変更するには?

これは、ファイル(実際にはディレクトリ内のすべてのファイル)の名前を任意のUUID / GUIDに変更することです(ただし、拡張子は変更されていません)。これを行う方法についてのアイデアはありますか?

ベストアンサー1

bahamatの答えに似ていますが、実際を生成します。UUID。 UUIDには、使用されているバージョンとバリアントを決定するために使用される予約済みビットがいくつかあります。現在、5種類のUUIDが定義されており、要求に応じて任意のUUIDはバージョン4です。バージョン 4 UUID の形式は次のとおりです。

442b7f35-f33f-4b8d-9a07-db8ec207129e
              | '-- バリアント (ビット 10__ -> [89AB])
              '--------- バージョン (ビット 0100 -> 4)

また、このバージョンはUUIDの作成に失敗しても中断されません。

for i in *; do uuid=$(uuidgen -r) && mv -- "$i" "$uuid.${i##*.}"; done

macOS用

for i in *; do uuid=$(uuidgen) && mv -- "$i" "$uuid.${i##*.}"; done

使用/proc/sys/kernel/random/uuid:

for i in *; do uuid=$(cat /proc/sys/kernel/random/uuid) && mv -- "$i" "$uuid.${i##*.}" done

おすすめ記事