特定の拡張子を持つファイルを新しく作成されたディレクトリに移動する方法

特定の拡張子を持つファイルを新しく作成されたディレクトリに移動する方法

mv新しく作成したディレクトリに特定の拡張子を持つファイルを追加したいと思います。スクリプトは、新しく作成されたすべてのフォルダからすべての拡張子を持つファイルを移動しますが、これは意図されていません。代わりに、拡張関連ファイルを特定のフォルダに移動する必要があります。どうすればいいですか?

for i in 1 2 3
do
    mkdir -p backup/ch0${i}
    if [ $? -eq ]; then
        echo "directory backup/ch0${i} created"
        for j in c h sh
        do
            count=0
            count=`expr $count + 1`
            if [ $count==i ]; then
                cp /home/owner/*.${j} backup/ch0${i}
                if [ $count!=i ]; then
                    continue;
                elif [ $? -ne 0 ]; then
                    break 2;
                fi
        done
    else
        echo "could not back up directory!!"
    fi 
done

ベストアンサー1

これは働きます:

backup_extensions()
{
    count=0
    while [ -n "$1" ]
    do
        let count+=1
        mkdir -p backup/ch0${count}
        cp /home/owner/*.${1} backup/ch0${count} || return 2
        shift
    done
}

backup_extensions c h sh

おすすめ記事