10

私はオブジェクト指向プログラミングに慣れています。今、私は Linux を介して unix bash スクリプトを学習し始めたところです。

UNIXスクリプトを持っています。私はそれを「モジュール」またはできれば「more」、「ls」などに似たプログラムに分割し、パイプを使用してすべてのプログラムをリンクしたいと考えました。たとえば、「何らかの入力」myProg2 | myProg3.

すべてを 1 つのスクリプトにするのではなく、コードを整理して見栄えを良くしたいと考えています。また、テストと開発が容易になります。

特に初心者として、これを行うことは可能ですか?

4

3 に答える 3

0

シェル スクリプトには、Unix の他のプログラムと同様に標準の入力と出力があるため、パイプで使用できます。スクリプトを分割することは、後で他のコマンドと一緒にパイプで使用できるため、良い解決策です。

私は次の方法で Bash プロジェクトを整理しています。

  • 各コマンドは独自のファイルに入れられます
  • 再利用可能な関数は、関数のみを含む単なる古典的なスクリプトであるライブラリファイルに保持されます。
  • すべてのファイルは同じディレクトリにあるため、コマンドはライブラリを見つけることができます$(dirname $0)/library
  • 構成は環境変数として別のファイルに保存されます

明確にするために、グローバル変数を使用して関数とメイン プログラム間の通信を行うべきではありません。

次のパーツを用意したスクリプトのテンプレートを用意します。

  • 名前と著作権を含むヘッダー
  • で構成を読み取るsource
  • ライブラリをロードsource
  • パラメータをチェック
  • ヘルプを表示する関数。要求された場合、またはパラメータが間違っている場合に呼び出されます

私の最善のアドバイスは次のとおりです。次にヘルプ機能を必要とするのは...あなた自身なので、常にヘルプ機能を記述してください!

プロジェクトをインストールするには、すべてのファイルをコピーし、構成ファイルで何を構成するかを説明するだけです。

于 2013-07-31T11:00:50.177 に答える