Questão Como alterar a preferência de cor padrão para "ls" no Windows?


Estou usando o ls (do Msys) no Windows. Por padrão, o ls não codifica diretórios e arquivos, mas é algo que eu quero. Estou cansado de digitar "ls -C" e "ls --color". Existe alguma maneira além de configurar um script bash que me permita fazer isso. (Lembre-se, eu estou no Windows)


4


origem


Isso pode ser de alguma relevância stackoverflow.com/questions/946546/… - Rook


Respostas:


doskey ls=ls --color $*

doskey está embutido, até!

Eu tenho um arquivo .bat de inicialização que funciona como uma espécie de .bashrce jogue todos os meus aliases lá, além de ter um pequeno script Python para gerenciá-los mais facilmente. cmd é realmente muito suportável com algumas ferramentas adicionais (Cygwin vai um longo maneira, basta adicionar o seu \bin ao seu PATH)


Para aplicar aliases automaticamente a cada nova instância de cmd, Crie um .bat arquivo, por exemplo em %USERPROFILE%\aliases.bat com este conteúdo:

@ECHO OFF
doskey ls=ls --color $*

Então, usando regeditlocalize HKEY_CURRENT_USER\Software\Microsoft\Command Processor\ e adicione um String Value nomeado Autorun, com dados do valor definidos como: %USERPROFILE%\aliases.bat


6



Como faço para que isso funcione permanentemente com todas as instâncias do cmd.exe? - aviraldg
É para isso que serve o arquivo .config. Processador \ Autorun HKEY_CURRENT_USER \ Software \ Microsoft \ Command (faça-o se ele não existir) e aponte para um .bat. Isso significa que você pode facilmente configurar QUALQUER variável sem realmente fazer alterações que não sejam muito fáceis de reverter. Certifique-se de adicionar um @ECHO OFF para que ele não diga o que você está fazendo toda vez que iniciar um prompt :) - Phoshi
Bem, faz o que deveria, mas silenciosamente corta todos os outros argumentos para sl - aviraldg
aaaand é por isso que eu uso um script python. Anexar um $ * (significa "todos os argumentos", como% * em um arquivo de lote) e desculpe por perdê-lo! - Phoshi


Em vez de digitar ls --color, você poderia definir um alias de bash:

alias ls='ls --color'

Isso produziria ls --color cada vez que você escreve ls.


1



Diz alias não é reconhecido como um comando interno ou externo, .. Você conhece o resto. - Qwerty