フォルダ内のファイルを個々のフォルダにコピー

フォルダ内のファイルを個々のフォルダにコピー

奇妙に聞こえるかもしれませんが、私のHTPCでは、フォルダ内の各個々のファイルをそのサブディレクトリ(ファイルと同じ名前を使用して)に移動するようにファイルを保存する方法を並べ替える必要があります。

IE - 現在のディレクトリは次のとおりです。

directory/
- a.file
- b.file
- c.file

私はそれを次のように変更したいと思います:

directory/
- a/
-- a.file
- b/
-- b.file
- c/
-- c.file

私はこれが非常に難しいとは思わないが、奇妙です。以前、誰かがこれを行うのを見たことはありません。 findとexecを使って行うことができると思いますが、私は戦闘員なので、これをよく理解できません。 。

事前に感謝します(または時間をかけてこの記事を読んでくれてありがとう)。

ベストアンサー1

別の解決策:

#!/usr/bin/env bash

Dir="/tmp/directory/"

for f in "$Dir"/*;
do
    SubDir="${f%.*}"
    mkdir -- "$SubDir"
    mv -- "${f}" "$SubDir/"
done

おすすめ記事