web-dev-qa-db-fra.com

Quelle est la signification de '*' (étoile, astérisque) dans les résultats de la liste de fichiers?

J'ai remarqué que certains de mes fichiers ont un astérisque à la fin.

L'astérisque à la fin a-t-il une signification particulière? Je pense qu’ils sont principalement exécutables et affichés en vert par la commande ls.

Vous verrez que ./bkmp* et ./bkmp0* ont un astérisque à la fin. Ce sont des scripts bash exécutables.

Voici ma sortie:

drwxr-xr-x 7 username username  4096 Oct  2 18:28 ./
drwxr-xr-x 8 root     root      4096 Oct  2 09:25 ../
-rw-r--r-- 1 username username  3724 Sep 22 03:06 .bashrc
-rwxr--r-- 1 username username   319 Sep 22 03:42 .bkmp*
-rwxr--r-- 1 username username   324 Sep 29 23:30 .bkmp0*
drwx------ 2 username username  4096 Sep 17 13:52 .cache/
-rw-r--r-- 1 username username   675 Sep 17 13:37 .profile
drwx------ 2 username username  4096 Sep 22 10:10 .ssh/
drwx------ 2 username username  4096 Sep 24 19:49 .ssh.local/
drwxr-xr-x 2 username username  4096 Sep 22 04:10 archives/
drwxr-xr-x 3 username username  4096 Sep 24 19:51 home/
-rw-r--r-- 1 username username 27511 Sep 24 19:51 username_backup.20120924_1908.tar.gz
35
vfclists

Si vous utilisez simplement lssans arguments, il semble que vous utilisiez un alias pour lsname__. Pour obtenir le même résultat, je dois utiliser ls -lF. Dans la page de manuel lsname__:

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

-l     use a long listing format

Les symboles signifient ce qui suit:

/: directories
@: symbolic links
|: FIFOs
=: sockets
*: executable files

Pour vérifier si vous utilisez un alias, utilisez alias ls. Mine (qui est la valeur par défaut Ubuntu) dit:

$ alias ls
alias ls='ls --color=auto'

Plus d'informations sur l'utilisation d'alias peuvent être trouvées here .

40
reverendj1

Ces fichiers sont en effet exécutables. C'est parce que vous avez (ou votre fichier .bashrc l'a) spécifié l'option -F. Malheureusement, la page de manuel n’est pas très claire à ce sujet:

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

Mais autant que je sache, * est destiné aux exécutables, / pour les répertoires, = pour les sockets, > pour les portes, @ pour les liens symboliques, | pour les FIFO et rien pour les fichiers normaux.

De plus, la couleur verte est due au fait que vous (ou votre fichier .bashrc a) spécifié l'option --color.

5
Silke

On dirait que votre ls est configuré pour indiquer les fichiers exécutables.

http://forums.whirlpool.net.au/archive/961288

Peut-être que votre ls est alias avec quelque chose de plus. vérifier

alias ls
2
Nate

Je pense qu’ils sont des exécutables et qu’ils démarrent si vous démarrez votre système. quelque chose comme des scripts de démarrage.

0
rɑːdʒɑ