シェルスクリプト - トラブルシューティング

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動

概要

ここでは、シェルスクリプトに関するトラブルシューティングの解決方法を記載する。


改行コードが原因のシンタックスエラー

以下の例は、簡単な関数を定義しているだけのシェルスクリプトであるが、
このファイルをsourceコマンドで読み込んだ時、以下のようなシンタックスエラーが出力されることがある。

 # Sample.sh
 function hello()
 {
    echo 'Good morning!'
 }
 
 # 出力
 source Sample.sh
 
 'ash: my_functions.bash: line 1: syntax error near unexpected token `{
 'ash: my_functions.bash: line 1: `function hello {


このようなエラーが出力される場合、テキストファイルの改行コードがWindows(CR+LF)で保存されている可能性がある。
改行コードを変更するには、例えば、Viエディタならば以下のように実行する。

:set ff=unix
:wq