• 締切済み

Linux シェルスクリプト

exam2 ディレクトリに存在するファイル名をすべ て小文字のファイル名に変更する。ただし,変更後のファイル名がすでに存 在するファイル名と一致する場合に は,その旨(エラーが起きたということ)を 画面に出力し,ファイル名を変更しないようにする。 という動作をするシェルを教えてください;; そしてそのシェルの動作確認の仕方も教えてください。

みんなの回答

  • ya9pon
  • ベストアンサー率34% (88/254)
回答No.3

そんなことでいいのか。

  • entree
  • ベストアンサー率55% (405/735)
回答No.2

-- #!/bin/sh ls exam2/* | while read OLD_NAME; do  NEW_NAME=`echo "$OLD_NAME" | tr a-z A-Z`  if test -e "$NEW_NAME"; then   echo "error"   # exit 1  fi  mv "$OLD_NAME $NEW_NAME" done exit 0 -- > そしてそのシェルの動作確認の仕方も教えてください。 実際に小文字のファイル置いて実行してみればよいかと。 正常系:touch exam2/hogehoge exam2/fugafuga; ./rename.sh 異常系:touch exam2/hogehoge exam2/HOGEHOGE; ./rename.sh

karubin0127
質問者

お礼

回答ありがとうございます しかし実行してみたところ6行目にエラーが出て、実行出来ませんでした。。。

  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

こんなのとか。

関連するQ&A