GNU/Linux >> Belajar Linux >  >> Linux

LINUX:cara mendeteksi unggahan file ftp selesai

Saya akan mencoba menggunakan inotify, kode acara IN_CLOSE_WRITE.


Server ftp Apache "Mina" (java) mungkin dapat melakukan apa yang Anda inginkan, termasuk mendeteksi unggahan yang gagal, seperti yang disebutkan di sini

Kutipan:

Dari Ftplet.afterCommand, Anda harus dapat melihat balasannya. Untuk transfer gagal yang dapat dideteksi oleh FtpServer (yang menyebabkan SocketException atau IOException) ini seharusnya seperti 426 atau 551.

Ikhtisar Ftplet di sini, termasuk kode respons.

Tanda tangan metode afterCommand:

FtpletResult afterCommand(FtpSession session, FtpRequest request, FtpReply reply)

Anda akan memeriksa reply.getCode() dalam metode override Anda. Anda harus membuat subkelas DefaultFtplet daripada mengimplementasikan Ftplet antarmuka dari awal.

Perhatikan bahwa DefaultFtplet::afterCommand menunjukkan cara mendeteksi perintah klien apa yang sedang ditanggapi. Anda dapat memeriksa STOR atau STOU dan kode balasan 426 atau 551 untuk mendeteksi unggahan yang gagal.

Namun, ini mungkin tidak mendeteksi unggahan yang sengaja dihentikan oleh klien, jika aplikasi klien memutuskan untuk memperlakukan transfer seolah-olah file tersebut lebih pendek dari aslinya. Dalam kasus koneksi yang terputus secara tidak sengaja, saya pikir pemeriksaan kode balasan akan berfungsi. Pengujian dapat berupa mematikan aplikasi klien, atau menurunkan antarmuka jaringan mesin klien.

Untuk menangani pengunggahan yang berhasil (pertanyaan awal Anda), Anda dapat mencari kode balasan sukses, yaitu 226 .


Linux
  1. Bagaimana Mengelola Kemampuan File Linux

  2. Cara menemukan File di Linux

  3. Cara Membuat Swap di Linux

  1. Cara Menemukan Paket Yang Menyediakan File Tertentu Di Linux

  2. Cara membuat file swap di Linux

  3. Bagaimana cara menyalin file melalui FTP menggunakan Ubuntu Linux?

  1. Cara Mengosongkan File Log di Linux

  2. Bagaimana Mengganti Nama File di Linux?

  3. Bagaimana cara mengunggah satu file dengan FTP dari baris perintah?