0

ユーザーが入力した変数に基づいてディレクトリを作成し、そこにファイルを保存しようとしています。

これで十分簡単だと思いましたが、そこに保存しようとすると「そのようなファイルまたはディレクトリはありません」というエラーメッセージが表示されます。「ls」を押すと、ディレクトリが「?」で一覧表示されます。その後。

Mac 端末で .sh スクリプトを使用しています。

関連コード:

#get user input
echo "enter the collection number"
read COLLECTION
#create the directory
mkdir "$COLLECTION"dir
#calculate a checksum and save it to the above directory
sudo openssl md5 /dev/disk1 > "$COLLECTION"dir/md5.txt

--

4

3 に答える 3

3

スクリプトをチェックして、DOS スタイルの行末 ( \r\n) があるかどうかを確認します。dos2unixよくわからない場合は、スクリプトを安全に実行できます。

ファイル名に表示されるの?は、実際には行末の改行である可能性があります (Bash はそれを空白として扱わないため)。

存在"$COLLECTION"dir/しません。"$COLLECTION"dir\r/します。

編集: Vi は通常、それらの特殊文字が何であるかを示す良い仕事をします。

ls | vi -
于 2010-07-16T19:59:05.713 に答える
1

このコードで「そのようなファイルまたはディレクトリはありません」というエラーが発生する可能性があるのは、最後の行だけです。あなた/dev/disk1のマシンに存在しますか?

于 2010-07-16T19:55:03.023 に答える
0

mkdir -pそのエラーが発生したときに使用します;)

于 2010-07-16T19:55:13.170 に答える