freeRadius и google-authenticator: как получить qr-код на веб-сайте?

Не комментируйте команду.

Вместо этого поместите :впереди, а не #. Это сделает текстовые аргументы вашей команды для нулевой утилитой :, которая ничего не делает при запуске . Аргументы размечаются и анализируются, потому что это все еще команда, но с ними больше ничего не делается.


Бывают случаи, когда это не подходит :, в частности, когда выяснение самой команды имеет побочные эффекты. Простой пример: подстановка команды:

$ : log $(find -print -delete) --target /var/run/cache

В этом случае команда внутри $(...)будет запущена и подставлена ​​в аргументы :, даже если исходная команда никогда не запустится. Менее -деструктивным случаем будет${foo:=default}раскрытие параметра , побочным эффектом которого является присвоение значения $foo.

Наконец, перенаправления или конвейеры по-прежнему будут иметь место:

$ : foo > outfile
$ : bar | grep x |...

в обоих случаях отправит пустой вывод в место назначения, что приведет к усечению или созданию файла или запуску последующих команд, которым может не понравиться полученный пустой ввод.


Если у вас нет особых проблем с вашей командой, это совершенно безопасно и работает в zsh , Bash и любой POSIX -совместимой оболочке (через альт -. впоследствии поведение не будет работать везде ).

Если вам нужно именно последнее слово, zsh предоставляет настраиваемые привязки клавиш и команды, которые можно использовать для управления командной строкой. Если вы bindkey '^K' kill-region, то вы можете перейти назад до слова, Ctrl-K , чтобы стереть до начала строки, :,а затем получите безопасную команду, оставив только одно слово, которое вам нужно.

1
28.03.2020, 05:51
0 ответов

Теги

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