/ etc / sysconfig / *スクリプトで汎用(POSIX)シェル言語が許可されていますか?それとも制限がありますか?

/ etc / sysconfig / *スクリプトで汎用(POSIX)シェル言語が許可されていますか?それとも制限がありますか?

もちろん、/etc/sysconfig/*台本では一般的な宿題ができます。name=value

しかし、これらのファイルは.シェルによって解釈されます。そうですか?合法的に(つまり、オペレーティングシステムの規則に従って)使用でき、移植可能な(つまり、複数のオペレーティングシステムで)シェル言語に制限はありますか?それとも(POSIX)シェル言語を使用できますか?

私は次のことを考えています:

  • 複雑な課題:abc=/var/${logdir}
  • 一般的な「ライブラリ」または「ヘルパー」スクリプトの調達

このRedHatドキュメントそしてこのOpenMandrivaドキュメント設定できるさまざまな個別のオプションについて詳しく見ていきますが、これらのファイルの実際の基本形式については説明しません。

/etc/sysconfig(Debianではこれに相当する/etc/defaultする書式設定に関する規則があります。 Debianポリシーマニュアル必要/etc/default「POSIX.1-2017形式の変数の設定と説明のみを含める必要があります」のファイルですsh。この質問はRedHatについてです/etc/sysconfig。 )

答え1

短い:状況によって異なります

より長く:

RedhatとMageia / Mandrivaはシンボリックリンクを使用しています。/bin/sh方向bashしたがって、これがスクリプトの場合、shなどのbashまたはbash自体が発生します。に従って調達スクリプトにbashを使用するのか、それとも「sh」を使用するのかについて説明します。どちらのシステムにも両方の状況があります。

すべてのファイルがそこにあるわけではありません。/etc/sysconfig一部(例:/etc/sysconfig/partmon私のMageia6マシンで、またはsystat.ioconf私のCentOS 7)では単なるデータです。そんなやり方で書かれたものもあるが、台本を受けているわけではない。

関連情報