ホームページ >運用・保守 >Linuxの運用と保守 >Linuxでシェルプログラムを実行する方法

Linuxでシェルプログラムを実行する方法

王林
王林オリジナル
2020-03-12 14:24:284676ブラウズ

Linuxでシェルプログラムを実行する方法

まず、プログラムを見てみましょう test.sh

#!/bin/sh
#this is a test.
cd /tmp
echo "hello,this is a test"

プログラムの実行方法:

1. ファイルに実行可能権限。ファイルを直接実行します。

chmod コマンドは、ファイルのアクセス許可を変更するために使用されます。

x は、ファイルを実行可能にする権限です。上記のプログラムを実行したのと同じように。

(推奨チュートリアル: linux チュートリアル)

2. コマンド インタプリタを直接呼び出してプログラムを実行します。

Linuxでシェルプログラムを実行する方法

インタープリタは /bin/sh なので、sh コマンド インタープリタを使用してプログラムを実行します。

3. ソースを使用してファイルを実行します。

Linuxでシェルプログラムを実行する方法

プログラム実行の違いの説明:

シェル プログラムの実行に使用する 3 つの方法のうち、最初の 2 つの方法の実行プロセスは次のとおりです。

(1) 親プロセスはコマンドを受信しましたが、それが組み込みコマンドではないことが判明したため、外部コマンドを実行するための独自のシェル プロセスを作成しました

( 2) このシェル子プロセスは、それ自体を置き換える /bin /sh を使用し、sh プロセスは $PWD 変数を含む独自の実行環境変数を設定します。

(3) sh プロセスは、組み込みコマンド cd および echo を順番に実行します。この際、cd コマンドにより sh プロセス(子プロセス)の環境変数が変更されます。

(4) 子プロセスが実行されると、子プロセスは終了しますが、待機していた親プロセスが起動してコマンドを受け付け続けます。

最初の 2 つのメソッドの実行結果が予想と異なる理由は、親プロセスのカレント ディレクトリ (環境変数) は子プロセスからは変更できないことがわかりました。

ただし、ソースを使用してシェル スクリプトを実行する場合、子プロセスは作成されず、親プロセス内で直接実行されます。

推奨される関連ビデオ チュートリアル: linux ビデオ チュートリアル

以上がLinuxでシェルプログラムを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。