BashからPOSIX 1003.2(a)への翻訳者はありますか?

BashからPOSIX 1003.2(a)への翻訳者はありますか?

私はbashismをたくさん使うbashで書かれたプログラムを持っています。私はそこにいて、checkbashismbashshellcheck--posix手動レビューに適していることを知っています。しかし、私が本当に欲しいのはPythonのようなものです。2対3私はそれが存在すると仮定します(存在しない場合はそれについて書くこともできます)。

基本的に私は最新のbashでプログラムを書き続けたいと思いますが、次のように実行されるビルドスクリプトも持っていると思います。

$ bash2posix myprogram.sh > myprogram-compat.sh

解決できる問題は「修正」し、解決できない問題があれば中断します。存在の証拠は見つかりませんでした。お分かりの方はいらっしゃいますか?ありがとうございます。

編集:私はこれが可能であると確信しています。一般的に、多くの屈辱に対応するコストはかなり高くなります。たとえば、()の文字列置換は、精密演算子()を使用して文字列の特定のサフィックスを「検索」する組み込み関数を介して実行できます${//}。その後、置換コマンドの長さをテストして「見つかった」ことを確認し、置換コマンドを使用して新しい文字列を再構築できます。これは効率的ですか?いいえ、もちろんそうではありません。しかし、それは完全に可能です。printf.

ベストアンサー1

それは不可能です。少なくとも100%ではありません。

私はGNU Parallelでenv_parallel.dash記事を書きましたenv_parallel.bash。 (https://git.savannah.gnu.org/cgit/parallel.git/tree/src/env_parallel.dashそしてhttps://git.savannah.gnu.org/cgit/parallel.git/tree/src/env_parallel.bash)

(関数本文表示)に該当項目がないため、 にenv_parallel.bash変換できません。env_parallel.dashtypeset -f myfuncdash

おすすめ記事