私のホームディレクトリには、FTPサーバーから抽出された、、およびその他のApple-AP01
ファイルApple-AP02
がBanana-AP05
いくつかあります。同じChocolate-RS33
ホームディレクトリにFruit
。これらのフォルダ内には、などのサブフォルダSweet
もあります。Apple-AP01
Apple-AP02
Chocolate-RS33
自分のホームディレクトリでスクリプトを実行してスクリプトを作成したら、キーワードに基づいてFruitフォルダに入れてから、それを追加する必要がありますApple-AP01
。の場合、キーワードに応じてフォルダを入力してから、フォルダ内のサブフォルダをさらに入力する必要があります。私のすべてのファイルにはこれが必要です。誰かが動作するbashスクリプトを書くことはできますか?AP
Apple-AP01
Chocolate-RS33
Sweet
RS
Chocolate-RS33
Sweet
頑張った
for f in *.
do
name=`echo "$f"|sed 's/ -.*//'`
letter=`echo "$name"|cut -c1`
dir="DestinationDirectory/$letter/$name"
mkdir -p "$dir"
mv "$f" "$dir"
done
ループを使用する必要があるようですが、for
bashでどのように使用するのかわかりません。
ベストアンサー1
これには、実行したいほとんどの作業を含める必要があります。
sortfood.sh
#!/bin/bash
# Puts files into subdirectories named after themselves in a directory.
# add more loops for more ID-criteria
for f in *AP*; do
mkdir -p "./fruit/$f";
mv -vn "$f" "./fruit/$f/";
done
for f in *RS*; do
mkdir -p "./sweet/$f";
mv -vn "$f" "./sweet/$f/";
done