スクリプトを実行しようとしたときに発生するエラーです。
~bin/killp: line 7: [[ menubar: command not found
~bin/killp: line 11: [[ menubar: command not found
~bin/killp: line 11: [[: command not found
~bin/killp: line 15: [[ menubar: command not found
~bin/killp: line 15: [[: command not found
~bin/killp: line 15: [[ menubar: command not found
~bin/killp: line 19: conditional binary operator expected
~bin/killp: line 19: syntax error near `Dock'
~bin/killp: line 19: `if [[ $1 == Dock ]]; then'
これらのラインはこんな感じです。
if [[ $1 == Desktop ]] || [[ $1 == Finder ]]; then
killall Finder
fi
唯一の違いDesktop
はですFinder
。menubar
は私がスクリプトに渡すパラメータです$1
。
ベストアンサー1
エラーメッセージによれば、スクリプトに切り捨て防止の空白文字が隠されている可能性があります(例:⌥- 入力space)。
たとえば、エラーは実際には次のようになります。
~bin/killp: line 7: [[@menubar: command not found
~bin/killp: line 11: [[@menubar: command not found
~bin/killp: line 11: @[[: command not found
~bin/killp: line 15: [[@menubar: command not found
~bin/killp: line 15: @[[: command not found
~bin/killp: line 15: @[[@menubar: command not found
~bin/killp: line 19: conditional binary operator expected
~bin/killp: line 19: syntax error near `Dock'
~bin/killp: line 19: `if [[ $1 == Dock ]]; then' <-- Somewhere, not sure where.
見えない文字を@に置き換えました。