web-dev-qa-db-ja.com

ファイルと同じ名前のフォルダーを作成し、ファイルをフォルダーに移動するスクリプト

個別のファイルがたくさんあります:

/File 01.txt /Picture 02.png

これを行う端末コマンドはありますか?

/File 01/File 01.txt /Picture 02/Picture 02.png/

OS X 10.11.3のMacを使用しています

非常に単純に聞こえますが、私はMacにかなり慣れておらず、ターミナルがWindowsから移行したことを実際に知っていません。

7
neildeadman

始める前に、これを実行しようとしているフォルダーのバックアップを作成することをお勧めします。

cdを操作しようとしているフォルダーに入れてから、

for file in *; do
  if [[ -f "$file" ]]; then
    mkdir "${file%.*}"
    mv "$file" "${file%.*}"
  fi
done
  1. すべてをループします(*)現在のフォルダ内のファイル。
  2. 拡張子のないファイルからフォルダ(mkdir)を作成します ${file%.*}
  3. ファイルをそのフォルダーに移動(mv)します。

一部のファイルの名前にはスペースが含まれている可能性があるため、引用符を使用する必要があることに注意してください。

これを端末に入力するか、スクリプトファイルを作成します。

8
Ammar Alammar