eliminazione file
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
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.
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
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.
eliminazione file
Il mio problema è questo:
ho una directory con all'interno oltre a dei file altre directory che contengono a loro volta altri file ed altre directory etc etc...
All'interno di questo bell'alberello ho solo tre tipi di file, come posso eliminare in maniera ultra rapida due tipi di file per rimanere solo con quelli che mi interessano? È possibile? Grazie.
ho una directory con all'interno oltre a dei file altre directory che contengono a loro volta altri file ed altre directory etc etc...
All'interno di questo bell'alberello ho solo tre tipi di file, come posso eliminare in maniera ultra rapida due tipi di file per rimanere solo con quelli che mi interessano? È possibile? Grazie.
- masalapianta
- Iper Master

- Messaggi: 2775
- Iscritto il: lun 25 lug 2005, 0:00
- Nome Cognome: famoso porco
- Kernel: uname -r
- Desktop: awesome
- Distribuzione: Debian
- Località: Roma
- Contatta:
Mi sono messo alla lettura delle man econ il mio "fantastico" inglese ho partorito questo comando:
find /home/sly11/Desktop/nova -iwholename *.jpg -execdir -delete ;
il sistema mi ha risposto così:
find: The current directory is included in the PATH environment variable, which is insecure in combination with the -execdir action of find. Please remove the current directory from your $PATH (that is, remove "." or leading or trailing colons
mentre da root:
find: manca l'argomento di `-execdir'
????
find /home/sly11/Desktop/nova -iwholename *.jpg -execdir -delete ;
il sistema mi ha risposto così:
find: The current directory is included in the PATH environment variable, which is insecure in combination with the -execdir action of find. Please remove the current directory from your $PATH (that is, remove "." or leading or trailing colons
mentre da root:
find: manca l'argomento di `-execdir'
????
-
sunreal
- Master

- Messaggi: 1599
- Iscritto il: dom 10 apr 2005, 0:00
- Slackware: 14.1
- Desktop: kde
- Località: P.P.P.
(Sono sempre io nel frattempo sono passato al portatile)
Veramente dalle man pages credo di aver capito che execdir è più sicuro di exec e comunque avevo già provato senza risultato;Paoletta ha scritto:1) non devi usare -execdir ma -exec...
Questa non l'ho proprio capita..... nel senso letterale della frase.Paoletta ha scritto:2) se non quoti *.jpeg ci penserà la shell ad effettuare l'espansione dei caratteri; invece deve farlo find
- targzeta
- Iper Master

- Messaggi: 6643
- Iscritto il: gio 3 nov 2005, 14:05
- Nome Cognome: Emanuele Tomasi
- Slackware: 64-current
- Kernel: latest stable
- Desktop: IceWM
- Località: Carpignano Sal. (LE) <-> Pisa
Il comando è:
semplice ed efficace
.
Se hai anche un altro tipo oltre a jpg, supponiamo txt, il comando può essere:
Te lo scrivo perchè non è sempre immediato capire il man di find 
Quando Paoletta parla di quotare, in senso shell del termine, si intende far si che un parametro non vengo espanso dalla shell.
Nell'ultimo comando che ti ho scritto ho usato due metodi di quotatura della shell bash.
1) \( o \) -> così indico alla bash che le parentesi tonde non le deve interpretare
2) "*jpg" -> anche in questo caso voglio che la bash mandi a find proprio *jpg.
In generale si quotano tutti quei simboli che hanno significato anche per la shell ed il programma find, come hai letto nel man accetta l'asterisco come parametro. Un esempio vale mille parole. Vai in una directory che contiene file jpg ed esegui:
poi esegui
vedrai la differenza
.
Se vuoi sapere meglio che succede non hai che da chiedere, non lo scrivo solo per non essere troppo prolisso.
Spina
Codice: Seleziona tutto
find /home/sly11/Desktop/nova -name "*jpg" -deleteSe hai anche un altro tipo oltre a jpg, supponiamo txt, il comando può essere:
Codice: Seleziona tutto
find /home/sly11/Desktop/nova \( -name "*jpg" -or -name "*txt" \) -deleteQuando Paoletta parla di quotare, in senso shell del termine, si intende far si che un parametro non vengo espanso dalla shell.
Nell'ultimo comando che ti ho scritto ho usato due metodi di quotatura della shell bash.
1) \( o \) -> così indico alla bash che le parentesi tonde non le deve interpretare
2) "*jpg" -> anche in questo caso voglio che la bash mandi a find proprio *jpg.
In generale si quotano tutti quei simboli che hanno significato anche per la shell ed il programma find, come hai letto nel man accetta l'asterisco come parametro. Un esempio vale mille parole. Vai in una directory che contiene file jpg ed esegui:
Codice: Seleziona tutto
echo find . *jpgCodice: Seleziona tutto
echo find . "*jpg"Se vuoi sapere meglio che succede non hai che da chiedere, non lo scrivo solo per non essere troppo prolisso.
Spina
