Как добавить псевдоним системы?

У меня есть этот псевдоним в моем .zshrc :

 alias grim='gvim --remote' 

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

Я добавил его в ~/.profile и /etc/zsh/zshrc но никакого эффекта. Чтобы быть конкретным, получил это сообщение:

 /bin/sh: grim: not found 

  • run bash не работает команда alias в zsh
  • Сделайте «.» И «источник» по умолчанию равным ~ / .zshrc
  • Есть ли способ сделать расширение псевдонимов внутри, если ... fi на Bash?
  • обзор кода: автоматическое завершение для псевдонимов bash
  • Автоматически помещать псевдоним в ~ / .bashrc или ~ / .zshrc
  • Псевдоним для поиска файла, не работающего в bash
  • Улучшить существующий псевдоним для динамической замены текста в командной строке
  • Команда работает в оболочке bash, но не в псевдониме
  • 4 Solutions collect form web for “Как добавить псевдоним системы?”

    Только интерактивные оболочки читают файл, который может содержать определения псевдонимов. Если вы хотите использовать псевдоним для команды в фрагментах оболочки, выполняемых приложениями, псевдоним не является правильным инструментом. Вместо этого напишите сценарий оболочки следующим образом:

     #!/bin/sh gvim --remote "$@" 

    Назовите его ~/bin/grim и сделайте его исполняемым. Убедитесь, что у вас есть ~/bin в вашем PATH (вы можете поместить скрипт в любой другой каталог, который находится в вашем PATH ).

    Если вы хотите, чтобы он работал для каждого пользователя в системе, поместите его в /usr/local/bin чтобы убедиться, что этот каталог находится в PATH каждого пользователя.

    Вы можете создать файл alias.sh в каталоге /etc/profile.d

    Напишите строку

     alias grim='gvim --remote' 

    внутри этого файла alias.sh

    Это создаст общесистемную настройку.

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

    Вы можете взломать ~ / .config / ranger / commands.py и заменить последнюю строку в shell.execute ():

     self.fm.execute_command(command, flags=flags) 

    с

     self.fm.execute_command("bash -c '" + command + "'", flags=flags) 

    Меня устраивает.

    Вы что-то сделали? :

    source /path/to/.profile

    Interesting Posts

    подключение к Wi-Fi с паролем, содержащим кавычку

    cgroups / systemd: Как создать группу для дерева процессов

    Не удалось создать задание mplayer cron

    Extrat tar "Не удается открыть: имя файла слишком длинное"

    syntax_highlight <исходный_файл> | LPR

    Создание символической ссылки рекурсивно

    Как выбрать правильное программное обеспечение распределенной файловой системы для моего сервера Minecraft?

    получение IP-адреса DHCP с маршрутизатора на Docker

    Как изменить мой скрипт для замены и добавления новой переменной в конфигурацию?

    Пространство сетевых пространств (не) Изоляция?

    Как настроить ширину столбца в выводе команды Linux

    Загрузка модулей ядра, которые были скомпилированы для другого ядра, не удалась

    Что означает «-» как аргумент для команды?

    Есть ли простой HTTP-прокси, который я могу запускать без привилегий root?

    Восстановить текстовые файлы и структуру каталогов из базы данных, созданной Recoll?

    Linux и Unix - лучшая ОС в мире.