Per me il seguente funziona meglio:
tar xvf some.tar --transform 's?.*/??g'
--transform
L'argomento è una regex sostitutiva per sed, a cui viene fornito ogni percorso di file estratto. A differenza di --strip-components
, rimuoverà tutte le informazioni sul percorso, non solo il numero fisso di componenti.
Se vuoi rimuovere i primi n componenti iniziali del nome del file, hai bisogno di strip-components
. Quindi nel tuo caso, all'estrazione, fallo
tar xvf tarname.tar --strip-components=2
La pagina man ha un elenco di tar
ci sono molte opzioni, inclusa questa. Alcune versioni precedenti di tar
usa --strip-path
per questa operazione invece.
Stai usando erroneamente il -C
switch, utilizzato per cambiare directory. Quindi quello che devi fare è:
tar -cf tarname.tar -C /www/path path/file1.txt path2/path3/file2.xls
o se vuoi impacchettare tutto sotto /www/path
fare:
tar -cf tarname.tar -C /www/path .
Puoi usare -C
cambiare più volte.