쉘 스크립트가 터미널을 열지 못하는 이유는 무엇입니까?

쉘 스크립트가 터미널을 열지 못하는 이유는 무엇입니까?

항상 실행 권한을 부여한 모든 bash 스크립트는 작동하지만 Konsole을 열지 않고도 작동합니다.

그래서 내가 스크립트를 만들었다면:

#!/bin/bash
mkdir t

두 번 클릭하면 "t"라는 새 디렉터리가 나타납니다. 따라서 "sudo"가 포함되지 않은 모든 스크립트입니다.

하지만 내가 쓴다면

#!/bin/bash
sudo apt-get install vlc -y

#or any othe script with "sudo"

스크립트가 작동하지 않습니다. "sudo"를 사용하기 위한 비밀번호를 묻는 쉘이 열리지 않습니다. 그리고 vlc를 설치하지 않습니다.

터미널을 사용하여 실행해야만 작동하는데, 더블클릭하면 작동하는 스크립트가 필요합니다.

어떻게 해야 하나요?

답변1

스크립트에서 터미널을 실행합니다.

#!/bin/bash
xterm -e sudo apt-get install vlc -y

다른 터미널에서는 명령을 실행하는 방법이 -e.

관련 정보