![script.sh bash 파일을 실행하려면 왜 "bash -x"가 필요합니까? [폐쇄]](https://linux55.com/image/9635/script.sh%20bash%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%8B%A4%ED%96%89%ED%95%98%EB%A0%A4%EB%A9%B4%20%EC%99%9C%20%22bash%20-x%22%EA%B0%80%20%ED%95%84%EC%9A%94%ED%95%A9%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
Linux Mint v18.1에서 가상 머신(1920x1080)의 올바른 해상도를 설정하는 간단한 bash 파일 스크립트가 있습니다.
#!/bin/bash
xrandr --newmode "1920x1080" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
xrandr --addmode Virtual1 1920x1080
xrandr --output Virtual1 --mode 1920x1080`
원래 내 데스크탑에 이 스크립트가 있었지만 /etc/init.d/에 복사했지만 이전에 연결하지 않으면 여전히 실행되지 않는다는 점에 주목할 가치가 있습니다 bash -x
. ./script.sh
문제를 해결하려면 어떻게 해야 합니까?
편집: 방금 스크립트를 잘못 실행하려고 했습니다(PowerShell을 비난했습니다).
noob_me@linux-mint$ .\reso.sh .reso.sh: command not found
일단 이렇게 실행해 보니 ./script.sh
잘 되더군요.
답변1
파일을 독립적으로 실행하려면 파일에 실행 권한을 추가해야 합니다(아직 추가하지 않은 경우). 이 작업을 수행하는 데 사용할 수 있습니다 chmod
. chmod u+x filename
파일 소유자에게 실행 권한이 추가되고 chmod a+x filename
모든 사람에게 실행 권한이 추가됩니다.
답변2
스크립트가 run 을 사용하는 경우 bash -x
, run 없이 실행할 수도 있습니다. 왜냐하면 bash -x <file>
실행된 각 명령을 추적하여 디버그 모드에서 스크립트를 실행하는 유일한 방법이기 때문입니다.