저는 최근 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
다음에는 한 가지 변경이 필요합니다. #!/usr/bin/env bash
bash에 대한 PATH를 검색합니다. 하지만 set -x
이 일은 혼자 해야 합니다.