私はIDとは、例えば、画像のグループに同じであるID-sequence.jpg
名前を持つ複数の画像があります。- バッシュ
4fd-00027-1.jpg
4fd-00027-2.jpg
4fd-00027-3.jpg
6gq-00017-1.jpg
6gq-00017-2.jpg
6gq-00752-3.jpg
6gq-00752-4.jpg
を...今私は彼らにすべてのこれらのファイルを移動する必要があります同じディレクトリにはID
と同じ名前を付ける必要があります。私はこのようなものが必要だと信じています:
for FILE in *; do
ID_REGEX="(.*(?=-))"
if [[ $FILE =~ $ID_REGEX ]]; then
ID="${BASH_REMATCH[1]}"
echo "$ID"
mkdir -p "/Users/myname/images_organized/$ID"
$(mv "/Users/myname/images/$FILE" "/Users/myname/images_organized/$ID/$FILE")
fi
done
...しかし、何もしていません。エラーもありません。
可能な重複[dirが存在しない場合にのみMKDIRするには?](http://stackoverflow.com/questions/793858/how-to-mkdir-only-if-a-dir- does not-already-exist) –
ああ、ありがとう、それについて知っていたが、考えなかった。しかし、私のコードはまだファイルを移動しません。 – 3zzy
スクリプトフローを出力するためのbash '-x'オプションがありますか? – Jdamian