3
シェル構成スクリプトでは、GNUと比較したBSD上のcoreutilsの違いをどのように説明できますか?
今月までは、シェルの構成はかなり単純です(主に、.bashrcまたは.bash_profileいくつかのエイリアスを使用して)。しかし、zshとbashのどちらを使用しているかによって異なる動作が得られるように、リファクタリングしています。彼らは最初に何でも機能する一般的なシェル構成ファイルを調達し、次に使用されている特定のシェルに特化します(私はこれにシンボリックリンクします)。 今日lsは仕事をやめてびっくりしました。リファクタリング中に.bashrcエイリアスがあったことが判明しました alias ls='ls --color=always' それがために何かを壊したlsOSXのターミナル上のbashで。BSD lsは-G色が好きだが、GNU(またはUbuntuにあるものは何でも)が好きだ--colorと思ったら、かなりの数のオプションが異なることは明らかでした。 私の質問は、BSDとGNU coreutilsの間のオプションの違いなどを説明する最良の方法は何ですか?ifブロックでenv変数をテストして、使用されているOSを確認し、正しい動作を適用する必要がありますか?または、OSごとに個別の構成ファイルを作成する方が理にかなっていますか? これらの質問への回答は主観的である可能性がありますが、BSDとGNU coreutilsの違いの範囲の概要と、ほとんどの* nixで汎用構成を使用可能にするためにこれらを回避する戦略はかなり客観的なようです。