Saya seorang noix noob, jadi harap bersabar :-)
Saya memiliki skrip yang memindai banyak file ke server lain.
Misalkan mereka adalah z1.foo, z2.foo dll. Yang ingin saya lakukan adalah untuk scp file dan menghapus file yang lebih lama dari 5 hari di server tujuan.
Bagaimana cara saya menghapus file dengan aman dari tujuan?
Terima kasih.
find /path/to/files* -mtime +5 -exec rm {} \;
Jawaban:
Untuk menghapus file secara non-interaktif:
sumber
servername@ipaddress:path/to/dir/
?user:password@ipaddress
atauuser:password@dnsname
Anda dapat menghilangkan kata sandi jika tidak diperlukan. Saya baru saja mencobanyaroot@somednsname
dan berfungsi dengan baik. Bagian yangpath/to/dir
saya masukkan dalam perintah rm, sebagai jalur absolut, untuk memastikan itu benar.Anda bisa menyelesaikan kedua tugas dalam perintah yang sama dengan menggunakan
--delete
flag untukrsync
.The
--delete
pilihan menghapus file dari direktori tujuan yang tidak ada pada sumber. Ada beberapa pilihan tentang kapan file dihapus dan bagaimana menangani file yang dikecualikan.Halaman manual juga berisi peringatan ini:
sumber
Jika Anda ingin menetapkan nama pengguna dan nomor port, Anda dapat melakukan hal berikut:
sumber