GNU/Linux >> Linux Esercitazione >  >> Linux

Mac Os X:Dircolors non trovato?

Sono appena passato a un MacBook Air. Ho installato zsh usando homebrew, ma quando utilizzo parte del codice che avevo (originariamente) nel mio .zshrc , ricevo un errore che dice che .dircolors was not found .

Di seguito il codice in questione:

zstyle ':completion:*' auto-description 'specify: %d'
zstyle ':completion:*' completer _expand _complete _correct _approximate
zstyle ':completion:*' format 'Completing %d'
zstyle ':completion:*' group-name ''
zstyle ':completion:*' menu select=2
eval "$(dircolors -b)"
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' list-colors ''
zstyle ':completion:*' list-prompt %SAt %p: Hit TAB for more, or the character to insert%s
zstyle ':completion:*' matcher-list '' 'm:{a-z}={A-Z}' 'm:{a-zA-Z}={A-Za-z}' 'r:|[._-]=* r:|=* l:|=*'
zstyle ':completion:*' menu select=long
zstyle ':completion:*' select-prompt %SScrolling active: current selection at %p%s
zstyle ':completion:*' use-compctl false
zstyle ':completion:*' verbose true

zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#)*=0=01;31'
zstyle ':completion:*:kill:*' command 'ps -u $USER -o pid,%cpu,tty,cputime,cmd'

dircolors non viene fornito con Mac OS X? Come devo installarlo?

Aggiornamento:

Se eseguo dircolors direttamente sulla shell ottengo:

bash: dircolors; command not found

Risposta accettata:

Il comando dircolors è specifico per GNU coreutils, quindi lo troverai su Linux non incorporato e su Cygwin ma non su altri sistemi Unix come OSX. Le impostazioni generate nel tuo .zshrc non sono portabili su OSX.

Poiché stai utilizzando i colori predefiniti, puoi passare una stringa vuota a list-colors per ottenere i colori nei completamenti dei file.

Per i colori con gli effettivi ls comando, impostare il CLICOLOR variabile di ambiente su OSX e anche impostare LSCOLORS (vedi manuale per il formato) se vuoi cambiare i colori.

if whence dircolors >/dev/null; then
  eval "$(dircolors -b)"
  zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
  alias ls='ls --color'
else
  export CLICOLOR=1
  zstyle ':completion:*:default' list-colors ''
fi

Se desideri impostare colori non predefiniti (dircolors con un argomento file), la mia raccomandazione sarebbe di codificare l'output di dircolors -b ~/.dircolors nel tuo .zshrc e usa queste impostazioni sia per zsh che per GNU ls.

LS_COLORS=…
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
if whence dircolors >/dev/null; then
  export LS_COLORS
  alias ls='ls --color'
else
  export CLICOLOR=1
  LSCOLORS=…
fi

Linux
  1. gestore abbonamenti:comando non trovato

  2. dnf:comando non trovato

  3. bc:comando non trovato

  4. dpkg:comando non trovato

  5. id:comando non trovato

macof:comando non trovato

nc:comando non trovato

aws-shell:comando non trovato

kubectl:comando non trovato

tvservice:comando non trovato

ln:comando non trovato