ファイルのリネームをシェルスクリプトで行おうとしたのですが,エラーが発生してしまいました.
~/Desktop/hoge/hoge_fuga.jpg
を~/Desktop/hoge/fuga.jpg
に,~/Desktop/foo/foo_bar.jpg
を~/Desktop/foo/bar.jpg
に...としたいので,~/rename.sh
に
#!/bin/zsh cd ~/Desktop/hoge/ zmv hoge_* * cd ~/Desktop/foo/ zmv foo_* *
と記述して(~/.zshrc
にalias zmv='noglob zmv -W'
としてあります)実行したのですが,
./rename.sh:4: command not found: zmv ./rename.sh:6: command not found: zmv
と返されました.正規表現を使わずに記述しても同様のエラーメッセージを得ました.一方,Terminalに直接
$ cd ~/Desktop/hoge/ $ zmv hoge_* * $ cd ~/Desktop/foo/ $ zmv foo_* *
と入力したときは問題なくリネームされました.何度も確認したのでスペルミスはないです.
リネームしたいファイル(とそれらを含むディレクトリ)の数が多いうえに不定期に増えていくので手動で入力していくのは無理があります.そこでシェルスクリプトを利用して自動化したいと思っています.
原因と代替案を教えてください.
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/20 13:44