私は最近、ManjaroとArchを主に使用していますが、Mintで発生する可能性があるいくつかのハードウェア問題をデバッグしようとしています。
で始まるので、mintでもう機能しないbashスクリプトがたくさんありますが、#!/usr/bin/bash
Mintのbashは/bin/bash
。すべてのスクリプトを変更せずに一種のリダイレクトを統合する方法はありますか?
たとえば、練習を始めるために私が書いた最初のスクリプトは次のようになります。
#!/usr/bin/bash -x
cmatrix -bC red
その/usr
部分を削除するとMintで正しく実行されますが、同じスクリプトを維持し、両方のディストリビューションで実行する方法はありますか?
答え1
Stack Overflowに関連するQ&Aがあります。あなたが好むBash shebangは何ですか?ところで、ここでは良いものが見つかりません。
、などのどこでもスクリプトをbash
検索するには、次のようにします。PATH
/bin
/usr/bin
#!/usr/bin/env bash
(これは/usr/bin/env
存在を仮定します。)
ただし、前述のディストリビューションを含むほとんどのLinuxディストリビューションで使用するのは安全です。
#!/bin/bash
一部のディストリビューション返品うん/usr/bin/bash
、しかし結果はこうだ「/usr
マージ」-/bin
これで、これらのディストリビューションでも/usr/bin
同じコンテンツを使用できるようになりました。
答え2
次に、1つの変更が必要です。 #!/usr/bin/env bash
bashのPATHを検索します。しかし、set -x
これは一人でなければなりません。