GNU/Linux >> Linux Esercitazione >  >> Linux

Come funziona il comando 'ls' in Linux/Unix?

Per aggiungere alla risposta, nel libro The C Programming Language (K&RC) hanno fornito un piccolo esempio su come implementare ls. Hanno spiegato molto bene le strutture dati e le funzioni utilizzate.


Per capire cosa fa ls, puoi dare un'occhiata alla fonte di OpenSolaris:https://hg.java.net/hg/solaris~on-src/file/tip/usr/src/cmd/ls/ls.c.

Se questo è travolgente, su Solaris inizi usando truss per guardare le chiamate di sistema che fa ls per capire cosa fa. Usando il traliccio, prova:

truss -afl -o ls.out /bin/ls

quindi guarda l'output in ls.out

Credo che trace sia l'equivalente di truss in Linux.


Non si biforca. La shell esegue il fork e l'exec per eseguire qualsiasi comando che non sia integrato e uno dei comandi che può eseguire è ls.

ls utilizza opendir() e readdir() per scorrere tutti i file nella directory. Se ha bisogno di maggiori informazioni su uno di essi, chiama stat().


Linux
  1. Come usare il comando cronologia in Linux

  2. Come funziona il bit appiccicoso?

  3. Linux:come si controllano le informazioni sulla struttura delle directory di un file Unix/linux?

  4. Come funziona il comando Exit su un terminale Unix?

  5. Come funziona il comando Tee?

Come personalizzare il comando top di Linux

Come utilizzare il comando fd sul sistema Linux

Che cos'è il comando sorgente in Linux e come funziona?

Come funziona la memoria di scambio in Linux?

Come utilizzare il comando wget in Linux?

Come funziona una GUI Linux al livello più basso?