
Я пытаюсь изменить команду ls с помощью псевдонима в моем файле .bashrc и получаю странные ошибки.
Файл .bashrc
export http_proxy="Some URL"
export https_proxy=$http_proxy
alias ls='ls --color'
Затем, когда я пробую ls
, вывод такой:
's: unrecognized option '--color
Try 'ls --help' for more information.
Если я удалю псевдоним из моего .bashrc и запущу ls --color
, я увижу ожидаемый результат.
Я не уверен, что я делаю неправильно, но помощь была бы признательна. Каждый раз, когда я вношу изменения, я перезапускаю терминал, чтобы убедиться, что .bashrc перезагружен. ОС — Ubuntu 14.04.
Некоторые вещи, которые могут быть актуальны
- Пустая строка в моем .bashrc отображается
: command not found
в терминале, когда я открываю новый файл. - Если запустить
alias ls='ls --color'
в терминале, псевдоним работает правильно. - Технически я работаю на Windows и использую Cygwin для SSH-подключения к этой виртуальной машине Ubuntu.
Похожие вопросы
почему псевдонимы, определенные в файле .bashrc, не работают?
http://www.linuxquestions.org/questions/linux-newbie-8/bashrc-aliases-don't-work-267885/
Псевдоним не работает в Debian
https://unix.stackexchange.com/questions/44616/why-is-vim-creating-files-with-dos-line-endings
решение1
Нашел проблему. Я заметил, когда открыл свой .bashrc в vim, там было немного [dos]
внизу.
Затем я попытался dos2unix .bashrc
преобразовать его в файлы Unix, и проблема была устранена.
При дальнейшем чтении создается впечатление, что Cygwin мог иметь какое-то отношение к окончаниям строк dos. См.https://unix.stackexchange.com/questions/44616/why-is-vim-creating-files-with-dos-line-endings.
решение2
Я думаю, что для этого нужно использовать двойные кавычки. Двойные кавычки сохраняют полный смысл того, что вы печатаете, а одинарные — нет. Прочитай этодля получения дополнительной информации.
Итак, ваш код должен выглядеть так
alias ls="ls --color"