bashrc alias l não está funcionando

bashrc alias l não está funcionando

Estou tentando modificar o comando ls com um alias em meu arquivo .bashrc e estou recebendo alguns erros estranhos.

arquivo .bashrc

export http_proxy="Some URL"  
export https_proxy=$http_proxy 

alias ls='ls --color'

Então, quando eu tento ls, a saída é

's: unrecognized option '--color
Try 'ls --help' for more information.

Se eu remover o alias do meu .bashrc e executar ls --color, vejo o resultado esperado.

Não tenho certeza do que estou fazendo de errado, mas seria apreciada ajuda. Cada vez que faço uma alteração, reinicio o terminal para garantir que o .bashrc seja recarregado. O sistema operacional é Ubuntu 14.04.

Algumas coisas que podem ser relevantes

  • A linha vazia no meu .bashrc faz com que : command not foundseja exibida no terminal quando eu abro um novo.
  • Se eu executar alias ls='ls --color'no terminal, o alias funcionará corretamente.
  • Tecnicamente, estou no Windows, usando Cygwin para SSH nesta VM Ubuntu.

Perguntas relacionadas
por que os nomes alternativos definidos no arquivo .bashrc não estão funcionando?
http://www.linuxquestions.org/questions/linux-newbie-8/bashrc-aliases-don't-trabalho-267885/
Alias ​​não funciona no Debian
https://unix.stackexchange.com/questions/44616/why-is-vim-creating-files-with-dos-line-endings

Responder1

Encontrei o problema. Percebi que quando abri meu .bashrc no vim, havia um pouco [dos]no fundo.

Em seguida, corri dos2unix .bashrcpara convertê-lo em terminações de arquivo Unix e o problema foi corrigido.

Após uma leitura mais aprofundada, parece que Cygwin pode ter tido algo a ver com os finais das linhas dos. Verhttps://unix.stackexchange.com/questions/44616/why-is-vim-creating-files-with-dos-line-endings.

Responder2

Acho que você precisa usar aspas duplas para isso. As aspas duplas preservam o significado completo do que você digita, enquanto as simples não. Leia issopara mais informações.

Então seu código deve ficar assim

alias ls="ls --color"

informação relacionada