GNU/Linux >> Linux Esercitazione >  >> Linux

Il comando `ls` non elenca gli ultimi contenuti della directory?

La shell di Linux non stampa informazioni aggiornate quando si tratta di ls. Ad esempio, uso i miei altri processi (IDE ecc.) Per creare alcune directory. Tuttavia, quando eseguo un comando ls, non vedo queste directory. Normalmente ci vogliono alcuni secondi a volte minuti prima che quella directory appaia nell'output di ls.

Che cosa sta succedendo? Posso forzare un aggiornamento? Idealmente, quando dico "ls", voglio vedere lo stato quando ho digitato il comando non un risultato memorizzato nella cache.

Il file system non è una condivisione NFS. L'unica altra cosa che mi viene in mente è che la directory è stata creata da un programma durante l'esecuzione da Eclipse (e il display è stato indirizzato alla mia finestra di Windows locale)

Non so come questo possa influenzare le cose però?

Risposta accettata:

ls non ha nulla a che fare con bash o qualsiasi conchiglia. Elenca il contenuto di una directory, esclusi i file nascosti (quelli il cui nome inizia con un . ) richiedendo tale elenco al kernel

Se ls non li mostra, quindi non ci sono (per quanto riguarda il sistema operativo) o stai elencando la directory sbagliata.

Ciò può accadere, ad esempio, quando la directory corrente è stata rinominata sotto i tuoi piedi. Come:

$ pwd
/tmp/1
$ ls
x
$ mv /tmp/1 /tmp/2
$ pwd
/tmp/1 # (/tmp/1 has been renamed but the shell is not aware of it)
$ mkdir /tmp/1
$ touch /tmp/1/y
$ pwd
/tmp/1
$ ls  # (ls is still listing `.` which has not changed, but now is a hardlink to `/tmp/2`, while `/tmp/1` is some new directory)
x
$ pwd -P  # (double check what the current directory is)
/tmp/2
$ cd /tmp/1
$ ls
y

Linux
  1. Il comando Rm nello script Bash non funziona con la variabile?

  2. Vsftpd non elenca il contenuto di una directory?

  3. id:comando non trovato

  4. w:comando non trovato

  5. df:comando non trovato

Du comando in Linux

Comando mv in Linux

Diversi modi per elencare i contenuti della directory senza utilizzare il comando ls

Come elencare i file in modo ricorsivo in Linux

Il comando sed di Linux non modifica il file di destinazione

Il comando du non analizza le directory nascoste