Что означает знак вопроса в терминальной команде?

Этот вопрос (Как удалить gnome из установки kubuntu 12.04?) имеют команды с вопросительными знаками:

sudo apt-get remove --purge ubuntu-desktop
sudo apt-get remove --purge unity?
sudo apt-get remove --purge gnome?

Что они означают?

1
задан 28 October 2017 в 18:43

1 ответ

Вообще говоря, в Bash a ? является шаблоном glob, который расширяется до произвольного символа.

Например:

$ echo Hello1 > foo1
$ echo Hello2 > foo2
$ cat foo?
Hello1
Hello2

Это похоже на [ f3], но * расширяется до 0 или более символов, а ? расширяется до одного (произвольного) символа.

В вашем специальном случае, однако, ? в команде очевидно, опечатка.

17
ответ дан 24 May 2018 в 10:40
  • 1
    Так что это бесполезно / бесполезно в моем случае, верно? – Ooker 18 March 2014 в 19:14
  • 2
    Да. Фактически он был отредактирован из ответа, с которым вы связались, когда задавали свой вопрос. :) – Malte Skoruppa 18 March 2014 в 19:14
  • 3
    Не могу в это поверить: -o – Ooker 18 March 2014 в 19:16
  • 4
    Даже если они были правильными подстановочными знаками, этого использования следует избегать без цитирования. apt-get понимают REs, но если в текущем каталоге существует файл с именем gnome1, оболочка расширит его, прежде чем apt-get сможет увидеть его. – Rmano 18 March 2014 в 19:54
  • 5
    @Ooker Вы никогда не забудете это сейчас! – comrademike 18 March 2014 в 20:55

Другие вопросы по тегам:

Похожие вопросы: