it-swarm-es.tech

¿Cuál es la diferencia entre ls y l?

Escribí accidentalmente l en lugar de ls hoy y descubrí que el comando todavía imprimía una lista de los archivos en mi directorio actual. Intentando l --help muestra el archivo de ayuda para ls, lo que sugiere que l es solo un alias de ls.

Sin embargo, cada archivo fue sufijado por un *. ¿Por qué es esto y qué significa?

En caso de que haga una diferencia, esto es cuando se ejecuta la última versión estable de Ubuntu.

56

RESPUESTA CORTA: entiende exactamente lo que hace este alias, puedes consultar el ~/.bashrc archivo y busque el término "alias l= ". No es más que ls -CF

RESPUESTA LARGA Una buena manera de inspeccionar qué es un comando:

type l

Si es un programa o una secuencia de comandos, le dará su ubicación, si es un alias, le dirá a qué tiene alias, si es una función, imprimirá la función; de lo contrario, le dirá si es una palabra clave o incorporada.

Ejemplos:

$ type l
l is aliased to `ls -CF'
$ type find
find is /usr/bin/find
$ type connecthome
connecthome is hashed (/usr/local/bin/connecthome)
$ type grep
grep is aliased to `grep --color=auto --binary-files=without-match --devices=skip'
$ type hello_se
hello_se is a function
hello_se () 
{ 
  echo 'Hello, Stack Exchangers!'
}
$ type type
type is a Shell builtin
$ type for
for is a Shell keyword
$ type nosuchthing
-bash: type: nosuchthing: not found
88
Shawn J. Goff
$ l --help
l: command not found

Parece que tienes un alias configurado en tu entorno. Quizás has heredado un .profile, .bashrc o similar que contiene algo como alias l='ls -F'.

-F, --classify
              append indicator (one of */=>@|) to entries

Tratar which l y alias para rastrear su definición.

9
Johnsyweb

FIJO: l es un alias para ls -CF (No estoy realmente seguro) en el valor predeterminado .bashrc en ubuntu

Puede escribir alias para ver todos los alias. Sería mencionado allí.

4
Rohan Monga

Por defecto, es un alias para ls -CF en ubuntu.

2
oadams

Redefiní todos mis accesos directos ls en mi .zshrc.

Esta es la sección relevante:

# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
    if [ -n ~/.dir_colors ]; then
        eval "`dircolors -b ~/.dir_colors`"
    else
        eval "`dircolors -b /etc/DIR_COLORS`"
    fi
    alias ls='ls --color=auto'
    #alias dir='ls --color=auto --format=vertical'
    #alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
alias l='ls -CF'
alias ll='ls -ClhF'
alias la='ls -CaF'
alias lla='ls -CalhF'
alias l.='ls -CAF --ignore=\*'
alias ll.='ls -CAlhF --ignore=\*'
alias t='tree -C'

Tenga en cuenta que ls se redefine a sí mismo:

% type ls
ls is an alias for ls --color=auto
2
polemon