Voglio rimuovere tutti i file esistenti nella cartella new-files
da un'altra cartella di Linux usando i comandi di bash.linux bash - rimuove tutti i file che si trovano in una directory da un'altra directory
ho bisogno di questo per due cose:
- ho ottenuto alcuni script di installazione che copiare alcuni file preconfigurati config sopra. Mi piacerebbe avere la possibilità di rimuovere i file di nuovo
- A volte capita che gli archivi ottengono scompattato nella root della vostra directory di download e non in una sottocartella perché la persona imballaggio il file messo tutto al archivi radice
Qual è il modo migliore per farlo?
Modifica, per chiarire:
- ho avuto una cartella con file chiamati
new-files
. - Ora eseguo
cp -r new-files/* other-directory/
. - Diciamo che other-directory non è la directory in cui volevo copiarli ma contiene già altri file quindi non posso semplicemente rm other-directory/*.
- Ho bisogno di cancellare tutte le cartelle che ho copiato accidentalmente. Come lo faccio?
Bello! Consiglierei di usare '-exec' con il trailing' + 'not';'. Questo è più efficace dato che 'rm' ha chiamato molto meno volte (simile a' xargs'). – TrueY
@TrueY Non puoi farlo. 'find' genera un errore se si usa' + 'mentre' {} 'è preceduto da un carattere non spaziale. – aymericbeaumet
Cosa vuoi ottenere con quella regex? Sembra distruggere il mio comando mentre filtra le registri 'conf.d' e così via? – Zulakis