2016-11-11 2 views
1

Mac OS TextEditを使用して、ユーザー入力をキャッチし、コマンドラインで指定されたファイルタイプ(jpgまたはgif)に基づいて小さなbashスクリプトを作成しようとしています。 dir1という名前のデスクトップ上のディレクトリ、端子にJPGユーザーの種類、すなわち、そのファイルタイプとdir2スクリプトを実行するためのユーザー入力を受け取ります

と呼ばれる新しいディレクトリにそのような場所のすべてのファイルを引き出し、スクリプトが生活の中に蹴り、dir1に位置JPGファイルのすべてを引っ張りますそのような場所にはdir2

この意識を達成するための最もゆったりとした複雑な方法は、私は新しいものですoシェルスクリプト。

私は薬を手​​に入れようとしています。それを動作させるには、以下のコードをどうすればよいですか。

#!/bin/bash 

echo “Good Morning, Please enter your file type for sorting [ENTER]:” 
read $FILE 
if [[ $file == *.jpg ]]; then 
    mv ~/DIR1/*jpg* ~/Users/christopherdorman/desktop/dir2/ 
echo “your files have been successfully processed” 
fi 
+0

bashは大文字と小文字が区別されるため、if文で$ FILEを使用する必要があります。これは、あなたが探しているものと信じています(入力が "jpg"または "gif" – Joel

+0

私は$を配備しましたが、 "行10:予想外のトークンの近くで構文エラーが発生しました"完了 –

答えて

1

ここでは、bash変数と構文についていくつかの混乱があります。 doneの代わりにfiを使用してifステートメントを閉じる必要があります。また、bashは大文字と小文字を区別するため、ifステートメントの変数を大文字にする必要があります。

#!/bin/bash 

echo “Good Morning, Please enter your file type for sorting [ENTER]:” 
read FILE 
if [[ $FILE == "jpg" ]]; then 
    mv ~/DIR1/*jpg* ~/Users/christopherdorman/desktop/dir2/ 
    echo “your files have been successfully processed” 
fi 
+0

joel私はそれが良いビットに沿って助けられたと思います。now.mv:rename/Users/christopherdorman/DIR1/* jpg * /ユーザー/ christopherdorman /ユーザー/ christopherdorman/desktop/dir2 / –

関連する問題