Intereting Posts
PulseAudio не может изменить приемник для одной конкретной программы Различное поведение sed относительно массива и строки при наличии обратных косых черт bash предотвращает прерывание printf другой printf Как определить, сколько памяти выделяется на ядро ​​для MPI-приложения GENE? Используются ли правила IPTABLE для других устройств в сети? Удалять только неиспользуемые зависимости, используя Synaptic Настроить команду rm Ограничить пользователя unix от установки переменных среды во время активного сеанса Как включить STARTTLS в операционной системе Unix Скопировать файлы без шифрования (ssh) в локальной сети Статический IP-адрес автоматически меняется на динамический Базовые разрешения для привода fat32 usb 'nc', используя ~ 100% CPU при передаче файла FIFO Есть ли способ командной строки, чтобы узнать, закончились ли все текущие загрузки в Chromium? уклоняющийся модуль в ошибке apache: «Невозможно найти структуру модуля API` evasive24_module »

Как вы управляете своими псевдонимами bash / zsh?

Как вы управляете своими псевдонимами bash / zsh?

Есть ли инструмент для этого более легко и менее «думать о псевдониме -> открыть .zshrc-sourced-file -> edit -> закрыть, перезагрузить .zshrc -> использовать псевдоним»?

Я редко добавляю или редактирую свои псевдонимы, но я все еще использую и иногда использую:

alias savealiases='alias > ~/.bash-aliases' 

Крайне примитивный, но он работает достаточно хорошо для меня более 20 лет. Если мне нужно сделать какое-нибудь фантастическое редактирование моих псевдонимов, у меня есть vi.

Если вас интересуют не только bash и zsh, вы можете быть заинтересованы в совершенно другом методе, который был введен интерпретатором команд UNOS в 1980 году. Этот интерпретатор команд реализует постоянные псевдонимы, которые хранятся в файле $HOME/.globals

Этот метод теперь доступен в bsh и в недавней версии Bourne Shell, которую вы можете получить от Schily-Tools.

Посмотрите недавнюю рабочую страницу Bourne Shell по адресу:

http://schillix.sourceforge.net/man/man1/bosh.1.html

Причина, по которой я упоминаю этот метод, заключается в том, что сложные синтаксисы в синтаксисе Korn Shell трудно печатать с правильным цитированием, а Bourne Shell реализует (как дополнительный метод помимо alias ) так называемые хеш-команды, которые позволяют вводить псевдонимы в сыром режиме.

BTW: правильный способ сохранить псевдонимы для других оболочек, которые не поддерживают постоянные псевдонимы:

alias -p > file

Если вы просто вызываете alias с ksh93, вы получаете вывод следующим образом:

autoload='typeset -fu' command='command ' compound='typeset -C'

но когда вы вызываете alias -p , вы получаете:

alias autoload='typeset -fu' alias command='command ' alias compound='typeset -C'

Как вы видите, вам нужен alias -p потому что он возвращает то, что позже может быть использовано в качестве ввода оболочки снова, вызвав:

. file

Изменить: alias -p не POSIX, но никакая оболочка, кроме bash, по-видимому, выводит выводимый по умолчанию вывод. Некоторые раковины никогда не дают выводимого результата!

Оболочки, для которых требуется -p для parsable вывода:

  • Bourne Shell
  • ksh93 (ksh88 не поддерживает ни синтаксический вывод, ни -p)

bash разрешает -p …

BTW: тире не поддерживается синтаксический вывод или -p. zsh реализует эквивалент alias -p через alias -L .