• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RedHatのShellScriptについて)

RedHatのShellScriptで発生するエラーの原因と解決方法

このQ&Aのポイント
  • 初めて投稿します。よろしくお願いします。RedHat7.0でShellScriptを作成しています。
  • 下記スクリプトを実行すると、./test.sh:aaa:command not foundとエラーになります。原因がおわかりの方、アドバイスをいただけないでしょうか。
  • やりたいことは、変数paraにtest.txtに定義された値を代入して表示することですが、うまくいかない状況です。権限はchmod 777 test.shとchmod 777 test.txtに設定してあります。

質問者が選んだベストアンサー

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

> 変数paraにtest.txtに定義されている値を代入して表示したい。 こんな感じ。 read para < /tmp/test.txt いろいろと勘違いをしているようなので、蛇足かもしれませんが幾つか。 > ./test.sh:aaa:command not found > とエラーになります。 . は、それに続くファイルからコマンドを読み取って実行する特殊コマンド だから、test.txt に書かれた aaa をコマンドとして実行しようとして、 「そんなコマンドはありまへん」と言ってるのですね。 > export para para を環境変数として扱わないのであれば、不要です。 > 権限はどちらのファイルも > chmod 777 test.sh > chmod 777 test.txt 値を読み出すだけですから test.txt への実行権限付与は意味がありません。 また、. を本来の「コマンドを実行するため」に使っていたとしても、 実行権限はつける必要がありません。

bunnyLove
質問者

お礼

a-kumaさん、回答ありがとうございます。 read para < /tmp/test.txt で、出来ました!ありがとうございます。 何も訳が解らずにサンプルコードをそのまま書いていたんです・・。 a-kumaさんの補足、とてもわかりやすく、参考になりました。 他にもつまづいている箇所がありますので、 またあらためて質問させていただくと思いますが その時はまた宜しくお願いいたします。 ありがとうございました。

関連するQ&A

専門家に質問してみよう