[BASH] lista directory [RISOLTO]

Forum dedicato alla programmazione.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il linguaggio di programmazione usato.
2) Se possibile portare un esempio del risultato atteso.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
Blallo
Packager
Packager
Messaggi: 3284
Iscritto il: ven ott 12, 2007 11:37
Nome Cognome: Savino Liguori
Slackware: 14.2 / 12.2
Kernel: 4.4.14-smp
Desktop: DWM
Località: Torino / Torremaggiore (FG)
Contatta:

[BASH] lista directory [RISOLTO]

Messaggioda Blallo » mer apr 21, 2010 13:10

ho bisogno di un comando che mi "sputi" solo le dir (all'interno di una dir)
ls -d mi restituisce solo uno stupidissimo " . "
come posso fare?
Ultima modifica di Blallo il mer apr 21, 2010 14:33, modificato 1 volta in totale.
My DWM configuration: https://github.com/8lall0/dwm

Feel free to use.

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar mar 14, 2006 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.1-64bit
Kernel: 3.10.17
Desktop: xfce
Località: Salerno

Re: [BASH] lista directory

Messaggioda d4z_c0nf » mer apr 21, 2010 13:34

find . -type d

Però è ricorsivo

Avatar utente
conraid
Staff
Staff
Messaggi: 12773
Iscritto il: gio lug 14, 2005 0:00
Nome Cognome: Corrado Franco
Slackware: current64
Località: Livorno
Contatta:

Re: [BASH] lista directory

Messaggioda conraid » mer apr 21, 2010 14:19

un "comando" sinceramente non so, prova

Codice: Seleziona tutto

$ ls -d */ .*/

con le varie opzioni per modificare l'output

altrimenti usa le pipe

Codice: Seleziona tutto

$ ls -l | grep `^d'


Codice: Seleziona tutto

$ ls -p | grep "/$"


se vuoi prendere solo il nome senza dati o senza il simbolo / usa ancora una pipe

comunque giocando con le pipe fai di tutto

Avatar utente
Blallo
Packager
Packager
Messaggi: 3284
Iscritto il: ven ott 12, 2007 11:37
Nome Cognome: Savino Liguori
Slackware: 14.2 / 12.2
Kernel: 4.4.14-smp
Desktop: DWM
Località: Torino / Torremaggiore (FG)
Contatta:

Re: [BASH] lista directory

Messaggioda Blallo » mer apr 21, 2010 14:26

conraid ha scritto:

Codice: Seleziona tutto

$ ls -p | grep "/$"

grazie mille conraid, questo va benissimo
ma volendo rimuovere lo slash, come posso fare? (sono abbastanza ignorante di bash)
My DWM configuration: https://github.com/8lall0/dwm

Feel free to use.

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar mar 14, 2006 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.1-64bit
Kernel: 3.10.17
Desktop: xfce
Località: Salerno

Re: [BASH] lista directory

Messaggioda d4z_c0nf » mer apr 21, 2010 14:31

jimmy_page_89 ha scritto:
conraid ha scritto:

Codice: Seleziona tutto

$ ls -p | grep "/$"

grazie mille conraid, questo va benissimo
ma volendo rimuovere lo slash, come posso fare? (sono abbastanza ignorante di bash)


Io lo metterei in pipe con sed:

Codice: Seleziona tutto

ls -p | grep "/$" | sed 's/\///'

Avatar utente
Blallo
Packager
Packager
Messaggi: 3284
Iscritto il: ven ott 12, 2007 11:37
Nome Cognome: Savino Liguori
Slackware: 14.2 / 12.2
Kernel: 4.4.14-smp
Desktop: DWM
Località: Torino / Torremaggiore (FG)
Contatta:

Re: [BASH] lista directory

Messaggioda Blallo » mer apr 21, 2010 14:34

d4z_c0nf ha scritto:

Codice: Seleziona tutto

ls -p | grep "/$" | sed 's/\///'

funziona benissimo anche questo :D
grazie mille
My DWM configuration: https://github.com/8lall0/dwm

Feel free to use.

Avatar utente
masalapianta
Iper Master
Iper Master
Messaggi: 2775
Iscritto il: lun lug 25, 2005 0:00
Nome Cognome: famoso porco
Kernel: uname -r
Desktop: awesome
Distribuzione: Debian
Località: Roma
Contatta:

Re: [BASH] lista directory [RISOLTO]

Messaggioda masalapianta » mer apr 21, 2010 14:38

find -maxdepth 1 -type d -exec basename {} \;

Avatar utente
urka58
Linux 2.6
Linux 2.6
Messaggi: 542
Iscritto il: mer dic 07, 2005 23:29

Re: [BASH] lista directory [RISOLTO]

Messaggioda urka58 » mer apr 21, 2010 19:29

masalapianta ha scritto:find -maxdepth 1 -type d -exec basename {} \;


manca il path della directory dove eseguire la ricerca, es "." o "/path/to/topdir"
Ciao

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar mar 14, 2006 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.1-64bit
Kernel: 3.10.17
Desktop: xfce
Località: Salerno

Re: [BASH] lista directory [RISOLTO]

Messaggioda d4z_c0nf » gio apr 22, 2010 12:20

urka58 ha scritto:
masalapianta ha scritto:find -maxdepth 1 -type d -exec basename {} \;


manca il path della directory dove eseguire la ricerca, es "." o "/path/to/topdir"
Ciao


Non è necessario, se non lo specifichi si intende la directory corrente.

Mario Vanoni
Iper Master
Iper Master
Messaggi: 3174
Iscritto il: lun set 03, 2007 21:20
Nome Cognome: Mario Vanoni
Slackware: 12.2
Kernel: 3.0.4 statico
Desktop: fluxbox/seamonkey
Località: Cuasso al Monte (VA)

Re: [BASH] lista directory [RISOLTO]

Messaggioda Mario Vanoni » gio apr 22, 2010 14:42

d4z_c0nf ha scritto:
urka58 ha scritto:
masalapianta ha scritto:find -maxdepth 1 -type d -exec basename {} \;


manca il path della directory dove eseguire la ricerca, es "." o "/path/to/topdir"
Ciao


Non è necessario, se non lo specifichi si intende la directory corrente.

Vero solo per GNU/find, vari altri UNIX/find lo pretendono!
Se lo script deve essere portabile, sempre find . o find /dir.

Avatar utente
d4z_c0nf
Packager
Packager
Messaggi: 1296
Iscritto il: mar mar 14, 2006 18:07
Nome Cognome: Rocco Aliberti
Slackware: 14.1-64bit
Kernel: 3.10.17
Desktop: xfce
Località: Salerno

Re: [BASH] lista directory [RISOLTO]

Messaggioda d4z_c0nf » gio apr 22, 2010 15:37

Mario Vanoni ha scritto:
d4z_c0nf ha scritto:
Non è necessario, se non lo specifichi si intende la directory corrente.

Vero solo per GNU/find, vari altri UNIX/find lo pretendono!
Se lo script deve essere portabile, sempre find . o find /dir.


Buono a sapersi.

rock


Torna a “Programmazione”

Chi c’è in linea

Visitano il forum: Nessuno e 4 ospiti