Con il carattere jolly non funzionerà. Devi specificare. (directory corrente) se intendi directory completa inclusi i file nascosti. Puoi farlo
tar -cvpzf test.tgz .
La risposta è che *
il carattere jolly è gestito dalla shell e semplicemente non si espande alle cose che iniziano con un punto. L'altro carattere jolly ?
inoltre non si espande alle cose che iniziano con un punto. Grazie a Keith per aver sottolineato che è la shell che esegue l'espansione e quindi non ha nulla a che fare con tar
.
Se usi shopt -s dotglob
allora l'espansione includerà cose come .filename
. Grazie ad Andy.
Usa shopt -u dotglob
per spegnerlo.
Cambio del dotglob
l'opzione non cambia ls
si. Piuttosto cambia solo il comportamento di espansione mostrato in qualcosa come ls *
.
Modifica:i miei consigli sono in un commento qui sotto.
Puoi usare:
tar -cvpzf test.tgz * .??*
Ma questo funziona solo per i file nascosti con nomi> 2 (per evitare '.' e '..')