--assume-yes로 apt-get 설치 자동화


68

소프트웨어 목록을 설치하기 위해 bash 스크립트를 작성하려고합니다. --assume-yes프롬프트를 통과하는 데 사용 하고 있습니다.

이 줄은 어떻게 든 작동하지 않습니다.

sudo apt-get install python-software-properties --assume-yes

작동 apt-get하지 않고 시도 --assume-yes하지만 프롬프트가 표시되면

please [Enter] to continue or ctrl+c to cancel adding it

를 사용 Enter하는 apt-get install대신 실행할 때 명령으로 어떻게 추가 --assume-yes합니까?


please [Enter] to continue or ctrl+c to cancel adding itPPA를 추가하려는 경우에만 나타납니다.
Avinash Raj

답변:


89

문제는 옵션이 패키지가 아닌 패키지 앞에 있어야한다는 것입니다. 이는 올바른 구문입니다.

apt-get <options> command package=version/release

따라서 작동하려면 다음과 같아야합니다.

sudo apt-get --assume-yes install python-software-properties

apt-get은 명령과 옵션을 섞을 때 용서하지만 안전한 측면에서 오류를 발생시키기 위해서는 항상 명령 앞에 옵션을 사용해야하며 패키지 이름 뒤에 옵션이나 명령을 두지 마십시오.


51

아래와 같이 명령에 -y플래그를 추가 apt-get install <package-name>하면 패키지를 설치하는 동안 프롬프트가 표시되지 않습니다.

sudo apt-get install -y <package-name>

에서 apt-get --help

-y  Assume Yes to all queries and do not prompt

--assume-yes와 사이에 차이가 -y있습니까?
피터 Mortensen

3
@PeterMortensen 그들은 같은 일을합니다. 남자 페이지에서 :-y, --yes, --assume-yes Automatic yes to prompts
davejagoda

1
이것으로 충분하지 않을 수 있으며 -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold"명령 에 추가해야 할 수도 있습니다 . 자세한 내용은 raphaelhertzog.com/2010/09/21/… 를 참조하십시오.
TTimo

@TTimo 와우! 당신이 그 의견을 게시한지 6 일 후에, 나는 와서 그것이 내가 정확히 필요한 답이라는 것을 발견했습니다 !! 귀하의 의견을 더 많이 표명 할 수 있다면 더하겠습니다!
크림 보

추가 옵션으로 답변을 자유롭게 편집하십시오.
Avinash Raj

1

다음과 같이 또 다른 조용하고 효과적인 방법 :

sudo DEBIAN_FRONTEND=noninteractive apt-get install -qq python-software-properties < /dev/null > /dev/null
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.