の名前を変更私は合計noobのですが、私は次の操作を行うために、このスクリプトを考え出し:bashスクリプトの最適化ファイルが
私は内部のRARファイルを使用して、未知のフォルダ名とサブフォルダがある中で、「のunrar」というフォルダがあります。 私はunknownsubfolderを入力し、rarファイルを見つけてunknownsubfolderでunrarします。 その後、私は新しいファイルを見つけて、unknownsubfoldernameで名前を変更します。今私はファイルをつかんで./unrarに移動します。
#!/bin/bash
cd /home/user/unrar/
for dir in /home/user/unrar/*;
do (cd "$dir" && find -name "*.rar" -execdir unrar e -r '{}' \;); done
echo "$(tput setaf 2)-> unrar done!$(tput sgr0)"
for dir in /home/user/unrar/*;
do (cd "$dir" && find -name "*.mkv" -exec mv '{}' "${PWD##*\/}.mkv" \;); done
for dir in /home/user/unrar/*;
do (cd "$dir" && find -name "*.mp4" -exec mv '{}' "${PWD##*\/}.mp4" \;); done
for dir in /home/user/unrar/*;
do (cd "$dir" && find -name "*.avi" -exec mv '{}' "${PWD##*\/}.avi" \;); done
cd /home/user/unrar
find -name "*.mkv" -exec mv '{}' /home/user/unrar \;
find -name "*.mp4" -exec mv '{}' /home/user/unrar \;
find -name "*.avi" -exec mv '{}' /home/user/unrar \;
これは、ほとんどのファイルで正常に動作しますが、いくつかのケースではそれは私が* DIR内の.rarを見つけたいと、それをのunrarない
ありません。新しいファイル(.mkv | .avi | .mp4)はDIR(.mkv | .avi | .mp4)に名前を変更し、./unrarに移動する必要があります。
これは私のファイル構造です。
./unrar/
- unknownsubfolder/
-file.rar
-file.r00
-....
- unknownsubfolder1/
- s01/
- file.rar
- file.r00
- ....
- s02/
- file.rar
- file.r00
- ....
- ....
case1の場合、 "/unknownsubfolder/file.rar"をunrarして "x.mkv"を取得します。ファイルは "unknwonsubfolder.mkv" に "x.mkv" から名前を変更し、(* .AVI + * .MP4と同じ) "./unrar/unknownsubfolder.mkv" == PERFEKT
ケース2の場合に移動され、私のスクリプトのunknownsubfolder/s01/file.rarはうまくいきますが、unknwonsubfolder1.mkvにinstedされたs01.mkvに名前は変更されません。 (もっとS02、S03、S04 ...等がある場合)私は常に./unrarで1つのunknownsubfolder.mkvファイルで終わる)==間違った出力
ので、私は3つの質問
を持っていると思いますファイルの名前を変更するための正しいDIRnameを取得するにはどうすればよいですか?または、私はunknownsubfolder/s01 ...と入力しますか?
単語を検索対象から除外する方法はありますか? 「unknownsubfolder」には「sample(.mkv | .avi | .mp4)」という別のフォルダ+ファイルが含まれていることがあります。元のファイルがサンプルファイルで上書きされないように、除外したいと思います。時々起こる
コードの一部を組み合わせて、さらに短くすることができると確信しています。誰かがどのように説明できましたか?では、mkv、avi、mp4をどのように1行にまとめるのですか?
に関して、ウォンバット
(EDIT:よりよい理解のために)
問題がある場合、1つのrarファイルの代わりにunknownsubfolderの中に30個のサブフォルダがあることを正しく理解していますか?あなたが言いましたように、それは 'subfolder1-30'という名前の1つのフォルダだと思うかもしれません。これらのサブフォルダにはまだ1つのrarファイルしか含まれていませんか? – nautical
右のunknownsubfolderには、最大30個のサブフォルダが含まれ、それぞれに圧縮されたビデオがrarに格納されます。 – wombat