
bashスクリプトを作成しようとしています。
vi hello_world
私が書いたシナリオでは
#!/bin/bash
text="Hello World"
echo $text
私がタイプしたとき
echo $hello_world
スクリプトが実行され、「Hello World」が印刷されるべきではありませんか?それとも文法に問題があるのでしょうか?
答え1
スクリプトの呼び出しに無効な構文を使用しました。
echo $hello_world
変数の内容を印刷しますhello_world
。
シェルスクリプトを実行するには、スクリプトパスを入力する必要がありますhello_world
。
./hello_world
hello_world
これは、現在の作業ディレクトリにある場合に行われます。
スクリプトを直接実行するには(たとえばを使用して./script
)、実行可能にする必要があります。次の方法でこれを実行できます。
chmod +x ./hello_world
または、ファイルマネージャのファイルプロパティダイアログボックスを使用します。
答え2
スクリプトが現在の作業ディレクトリにあると仮定すると、次のコマンドを実行してスクリプトを実行する必要があります。
./hello_world
スクリプトにまだ実行権限がない場合は、次を使用できます。chmod +x hello_world
答え3
たぶん場所bash
が異なるかもしれません。
代わりにブートストラップを使用できます。
#!/usr/bin/env bash
text="Hello World"
echo $text
編集:これは明らかです。スクリプトの実行に無効な構文が表示されません。努力する:
./hello_world