[Linux-Biella] R: File che cominciano con un trattino e possibili rischi
Scopel Emanuele (DD PIV)
EMANUELE.SCOPEL a enel.it
Ven 15 Feb 2008 14:35:08 CET
> -----Messaggio originale-----
> Da: linux-bounces a ml.bilug.linux.it
> [mailto:linux-bounces a ml.bilug.linux.it] Per conto di Daniele (Mastro)
> Inviato: venerdì 15 febbraio 2008 14.20
> A: Mailing List del Biella Linux User group
> Oggetto: Re: [Linux-Biella] File che cominciano con un
> trattino e possibili rischi
>
> Paul TT ha scritto:
> > * per la bash fa esattamente quell che ci si aspetta, cioe'
> > sostituisce con quello che deve quello che trova...
>
> vedi sotto
>
> > se fai rm *, sono stracaxxi tuoi, cmq.
>
> rm *
> cancella i file e non le directory perché io non gli ho dato
> alcuna opzione se il comando non fa ciò che mi aspetto
> dev'essere quantomeno dev'essere scritto a caratteri cubitali
> nel manuale!!
> cosa che non mi risulta per nulla
>
> > se da quando e' stato inventato uni*, tutti dicono di non
> farlo ci sara'
> > un motivo, eh...
>
> quando devi cancellare tutti i file di una directory tu lanci
> l'rm file per file?
>
> > inoltre, RTFM, se vuoi te lo scrivo piu' grosso....
> > man rm
> > e leggi........
>
> letto
> non c'è NULLA che parli di * se non una citazione a "rm -r .*"
> ne qualcosa che accenni a file con nomi particolari come "-"
Ma se fai: rm '/home/tua-home/-rf'
^ ^
Non ricordo se ci vanno i doppi apici o basta il semplice, ma dici alla
Shell di passare l'opzione esattamente come l'hai scritta.
Spero di non avere sparato una cazz***.
> quindi ti rimando il RTFM e aspetto una risposta meno acida e
> possibilmente ragionata con la tua testa e non risputata da
> qualcosa che hai sentito tempo fa..
>
> a tal proposito ripeto la domanda:
> a voi non sembra un comportamento rischioso?
>
> io ho in mente script che possono fare cose tipo:
>
> for f in *; do ... ; done;
>
> e cose simili
>
> tu dici che fa quel che ci si aspetta...
> io non mi aspetto che nell'espansione il file -rf venga
> interpretato come un opzione al comando che io lancio!
>
> e penso che nessuno se lo aspetti!
> te lo aspetti dopo che hai scoperto il comportamento.. ma
> questo non è "aspettarselo" è "constatarlo"
>
> mi sta bene che * venga espanso ad una stringa contenente
> tutti i file...
> il mio discorso è che secondo me sarebbe più "pulito" se si
> permettesse che \- non venga interpretato come opzione e che
> nell'espansione venga espanso proprio a \- ogni trattino ad
> inizio nome file
Una curiosita' su digito in shell:
$rm ./-rf a me funziona perfettamente.
Ovio mi trovo nella dir in cui c'e' il file.
> non mi sembra di essere stato scortese ne di aver detto
> asinate quindi gradirei se tu evitassi di fare altrettanto
>
> il mio è un dubbio lecito: mi pare che ciò che propongo sopra
> non sia una cosa assurda (\- ad inizio file) e se non è stato
> fatto forse c'è un motivo tecnico che io non conosco... voi
> siete a conoscenza di questo motivo? (se esiste)
Maggiori informazioni sulla lista
Linux