Синтаксис в HISTORY_IGNORE?

Звучит так, как у HDD выше приоритет загрузки, чем у USB. Это отличный стандарт безопасности, защищающий от преднамеренных атак через USB и загрузочный вирус USB.

У вас есть несколько вариантов:

Войдите в настройки BIOS и измените порядок загрузки. Очевидно, вам понадобится консоль. Некоторое серверное оборудование поддерживает удаленную консоль, последовательный порт или порт LAN или через карту управления вне диапазона. Если у вас этого нет, вам понадобится аварийная тележка. установите загрузчик на жесткий диск и используйте его для загрузки USB-накопителя. Если с вами все в порядке, то почему бы не установить ОС на HDD и не пропустить USB-накопитель?
2
задан 26 January 2018 в 08:13

2 ответа

l[a,l,s,h,] * не соответствует l, поскольку [] не является разделенным запятыми списком вещей для расширения - это синтаксис расширения расширений. С [...], [a,l,s,h,] совпадает с [alsh,] и не означает ни одного из alsh или ничего. Вам нужно l[alsh]#.

Для ls пространство, похоже, нарушает это совпадение, хотя все после этого необязательно. Поэтому на практике это, кажется, игнорирует ls только в том случае, если у него есть аргумент:

~ ls foo ls: cannot access 'foo': No such file or directory ~ tail ~/.histfile HISTORY_IGNORE='([bf]g *|cd ..|l[a,l,s,h,]*|less *|vi[m,] *)' l tail ~/.histfile l tail ~/.histfile

Кажется, вам нужно также сделать *:

HISTORY_IGNORE='([bf]g *|cd ..|l[alsh]#( *)#|less *|vim# *)'
2
ответ дан 17 July 2018 в 22:12

l[a,l,s,h,] * не соответствует l, поскольку [] не является разделенным запятыми списком вещей для расширения - это синтаксис расширения расширений. С [...], [a,l,s,h,] совпадает с [alsh,] и не означает ни одного из alsh или ничего. Вам нужно l[alsh]#.

Для ls пространство, похоже, нарушает это совпадение, хотя все после этого необязательно. Поэтому на практике это, кажется, игнорирует ls только в том случае, если у него есть аргумент:

~ ls foo ls: cannot access 'foo': No such file or directory ~ tail ~/.histfile HISTORY_IGNORE='([bf]g *|cd ..|l[a,l,s,h,]*|less *|vi[m,] *)' l tail ~/.histfile l tail ~/.histfile

Кажется, вам нужно также сделать *:

HISTORY_IGNORE='([bf]g *|cd ..|l[alsh]#( *)#|less *|vim# *)'
2
ответ дан 23 July 2018 в 22:51
  • 1
    Вы знаете, где найти полную документацию о HISTORY_IGNORE? – Mark J. Adams 28 January 2018 в 07:15
  • 2
    @ MarkJ.Adams zshparam об этом. Тем не менее, manpage упоминает [[ $1 != ${~HISTORY_IGNORE} ]] в функции по удалению записей из истории, и я думаю, что тест хорошо сочетается с фактическим поведением HISTORY_IGNORE в командных строках – muru 28 January 2018 в 07:18

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

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