1

私は基本的なオペレーティング システムのクラスを受講しており、次のような課題が与えられてい ます。ユーザーが 2 つの引数をキー入力しなかった場合、ファイルが見つからなかった場合、または別のユーザー (自分以外) がスクリプトを実行しようとした場合、スクリプトはエラーを表示する必要があります。"

私は次のようにスクリプトを書きました:

if [ $# -eq 2 ]; then
 if ! [[ -f "$1" ]]; then
  echo Error: The file $1 was not found.
  exit 1
fi
else
  echo Error: Check syntax or number of arguments
  echo Correct use: $0 [source] [destination]
  exit 1
fi

echo Copying file $1 to $2/backup/$1
mkdir $2
mkdir $2/backup
cp $1 $2/backup

現時点ではLinux環境にアクセスできないため(通常はリモートサーバーにSSH接続しますが、何らかの理由でダウンしています)、番号を確認する最初の2つの要件で機能するため、W7のCygwinでこれをテストしました個の引数が渡されましたが、ファイルが見つかりません。私はいくつかの検索を行いましたが、残念ながら、ユーザーの実行を制限する最後の部分をどのように実行するかについてはまったくわかりません。ここで助けが必要です。

コードそのものよりも、それがどのように行われ、なぜそのように行われるのかを学ぶことにはるかに興味があるので、可能であれば広範な説明をいただければ幸いです。

ありがとう

4

1 に答える 1