2016-12-14 11 views
0

がディレクトリ内から外付けハードディスクに私の内部からフォルダを移動するためのスクリプトをしよう....ディレクトリ内のディレクトリをシェルスクリプトから移動する方法は?

#!/bin/bash 
for i in *; do 
    if [[ $i == [* ]]; then 
     mv $i /entertainment/movies/; 
    fi 
done 

私は以下のエラーを取得:二重引用符で

mv: cannot stat 'DVDRip': No such file or directory 
mv: cannot stat '-': No such file or directory 
mv: cannot stat 'x264': No such file or directory 
mv: cannot stat '-': No such file or directory 
mv: cannot stat 'DD5.1': No such file or directory 
mv: cannot stat '-': No such file or directory 
mv: cannot stat '1GB': No such file or directory 
mv: cannot stat '-': No such file or directory 
mv: cannot stat 'ESub': No such file or directory 
+2

は$ i' '周りの引用符を追加:'「$ i」の ' –

+0

は、それが実行されているトリックは...「MV」やった...少し速く、それを確認するために冗長を追加している必要があります。.. .. – coolstoner

答えて

0

サラウンド変数の展開を空白が適切に処理されるようにします。

mv "$i" /entertainment/movies/ 

あなたが興味を持っているファイルの上にあなただけのループ場合ifテストは

for i in [*; do 
    mv $i /entertainment/movies/ 
done 

。省略することができる。そしてあなたも、ループを捨てることができます。

mv [* /entertainment/movies/ 
関連する問題