2

この質問のいくつかのバリエーションを見てきましたが、私の問題に完全に答える魔女はいません。2,000 ~ 150,000 個の画像ファイルを含むフォルダーがいくつかあります。これらのディレクトリの検索は、速度が大幅に低下するにつれてファイルの数が増加するため、非常に非効率的になります。

私がやりたいことは、automator を使用して次のことを行うことです: 1. フォルダーを選択する 2. サブフォルダーを作成する 3. (1.) で選択したフォルダー内の最初の 1000 ファイルで、新しく作成されたサブフォルダーを埋めます 4. 外側のフォルダーにさらにファイルが存在する場合は、作成します別のサブフォルダーに移動し、次の 1000 ファイルなどで埋めます。

これは可能ですか?どんな助けでも大歓迎です。

ありがとう、ブレンデン

4

1 に答える 1

1

これはディレクトリを取り、内容を「newFolder1」、「newFolder2」などの新しいフォルダに移動します。

ターミナルをよく使いましたか?さらに説明が必要な場合はお知らせください。また、チェックを入れていないので、エラーが発生した場合はお知らせください。

o このファイルをデスクトップに保存します (チュートリアル用に script.sh として保存します)。

#!/bin/bash

cd "$1"                   #Change directory to the folder to sort
filesPerFolder=$2       #This is how many files will be in each folder

currentDir='newFolder1';
currentFileCount=0;
currentDirCount=1;

mkdir $currentDir;
 
for file in *
do
 if [ -f "$file" ]
  then
   mv "$file" "$currentDir";
 fi 
 currentFileCount=$(($currentFileCount + 1));
 if [ $(($currentFileCount % $filesPerFolder)) -eq "0" ]   #Every X files, make a new folder
  then
   currentDirCount=$(($currentDirCount + 1));
   currentDir='newFolder'$currentDirCount;
   mkdir "$currentDir";
 fi
done

o ターミナルを開いて入力しますcd ~/Desktop/

ochmod 777 script.shファイルのアクセス許可を変更するには、次のように入力します

o タイプ./script.sh "/path/to/folder/you/want/to/sort" 30

oここでの30は、各フォルダーに必要なファイルの数です。

于 2012-08-07T12:03:36.373 に答える