GNU/Linux >> Linux Esercitazione >  >> Linux

Passare in rassegna una cartella ed elencare i file?

Ho una cartella denominata "campione" e contiene 3 file. Voglio scrivere uno script di shell che leggerà questi file all'interno della cartella di esempio e lo pubblicherà su un sito HTTP usando curl.

Ho scritto quanto segue per elencare i file all'interno della cartella:

for dir in sample/*; do
        echo $dir;
        done

Ma mi dà il seguente output:

sample/log

sample/clk

sample/demo

Sta allegando la cartella principale al suo interno. Voglio l'output come segue (senza il nome della cartella principale)

log

clk

demo

Come faccio?

Risposta accettata:

Usa basename per rimuovere il percorso iniziale dai file:

for file in sample/*; do
    echo "$(basename "$file")"
done

Ma perché no:

( cd sample; ls )

Linux
  1. Elencare i file a cui si accede da un programma?

  2. Lo scopo della cartella Lost+found in Linux e Unix?

  3. Stampa tutti i file in una cartella?

  4. Trova e copia i file

  5. Ripeti le immagini da una cartella e visualizza la presentazione a schermo intero

Comando Ls in Linux (Elenca file e directory)

Bash pausa e continua

Come trovare ed elencare in modo ricorsivo i file per data in Linux

Come comprimere file e cartelle in Linux [Suggerimento per principianti]

Come comprimere file e cartelle in Linux

Elenca i file della cartella pagina per pagina con il comando LS