Що означає аргумент -qq для apt-get?


36

Щойно я отримав сценарій bash Vagrantfile та post install. Vagrantfile завантажує стандартний Ubuntu з Ubuntu Cloud, але я знайшов щось у скрипті bash.

Кілька рядків сценарію читається як:

apt-get update -qq > /dev/null
apt-get -qq -y install apache2 > /dev/null

Я спробував пошукати в Інтернеті те, що -qqозначає сценарій оболонки, не згадував про це, тому я запитую тут, чи хтось знає, що він означає.

AFAIK > /dev/nullозначає, що поточний процес не друкується на екрані, тому для нього не потрібен -qqпрапор. Тож мені дуже цікаво знати.


Відповіді:


56

Це -qqпрапор, apt-getщоб зробити його менш галасливим.

-qq No output except for errors

Ви маєте рацію щодо >/dev/null. Перенаправляючи всі STDOUT, стан -qqстає зайвим.


1
-Qq буде зайвим, лише якщо замість цього буде включено "-y".
Ллойд Девульф

10

Це -qqробить дуже тихим, а не лише тихим. Але з моєї сторінки man це також означає -y( --assume-yesвідповідає "так" на питання), і людина попереджає про використання -qq:

На чоловіковій сторінці :

Зауважте, що тихий рівень 2 передбачає -y, ви ніколи не повинні використовувати -qq без модифікатора без дій, таких як -d, --print-uris або -s як APT, можливо, вирішили зробити те, чого ви не очікували.

Ви можете попросити розробника цього сценарію перевірити його.


5

У цьому випадку -qqє варіант apt-get, а не баш. Якщо ви зробите людину apt-get, ви отримаєте документацію на apt-get.

Це означає "справді тихо"

-q, --quiet
    Quiet. Produces output suitable for logging, omitting progress indicators. More q's will produce more quiet up to a maximum of two. You can also use -q=# to set the quiet level, overriding the configuration file. Note that quiet level 2 implies -y, you should never use -qq without a no-action modifier such as -d, --print-uris or -s as APT may decided to do something you did not expect.

Отже, підсумовувати дзвінок до apt-getбуде більш багатослівним, ніж apt-get -qякий є більш багатослівним, ніж apt-get -qq.

Як правило, перше місце для пошуку будь-якої допомоги в команді - це сторінка "man" цієї команди. man- це стандартна команда Linux, яка відображатиме довідку для даної команди. Тож у вашому випадку man apt-getдопоможе команда apt-get.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.