1. Perkenalan
2. Sintaks dan Parameter CommandFTP DriveHQ
3. Membuat File Skrip FTP
3.1 Contoh File Skrip FTP
3.2 Berkas Skrip FTP dengan Parameter
4. Otomatiskan Transfer File dengan Penjadwal Tugas Windows
5. Sinkronisasi Folder Otomatis menggunakan DriveHQ CommandFTP
6. Referensi Perintah FTP
6.1 Perintah FTP Standar
6.2 Perintah FTP Tingkat Lanjut DriveHQ
1. Perkenalan
DriveHQ CommandFTP adalah klien FTP & SFTP berbasis baris perintah yang andal, dirancang untuk menggantikan klien FTP Windows. Aplikasi ini mendukung scripting FTP, dan kompatibel dengan server FTP/SFTP standar apa pun.
FTP/SFTP sangat populer dalam mentransfer file/folder berukuran besar melalui internet. Klien FTP baris perintah banyak digunakan dalam transfer file otomatis dengan skrip FTP. Banyak orang menggunakan klien FTP baris perintah bawaan di Windows. Namun, klien FTP bawaan memiliki beberapa kekurangan utama:
- 1. Ini hanya mendukung FTP mode aktif, yang sering diblokir oleh router, firewall, atau perangkat lunak keamanan.
- 2. Hanya mendukung FTP biasa tanpa enkripsi data.
- 3. Fitur ini tidak mendukung melanjutkan/mencoba ulang secara otomatis.
DriveHQ CommandFTP dirancang untuk menggantikan klien FTP bawaan Windows. Aplikasi ini memiliki keunggulan sebagai berikut:
- 1. Perangkat ini mendukung FTP mode aktif dan pasif.
- 2. Aplikasi ini mendukung FTP melalui SSL (FTPS & FTPES) dan SFTP.
- 3. Fitur ini mendukung melanjutkan/mencoba ulang secara otomatis.
- 4. Ini mendukung kompresi dan enkripsi data.
- 5. Aplikasi ini mendukung pengunduhan/pengunggahan folder.
- 6. Fitur ini mendukung mirroring/sinkronisasi folder.
- 7. Fitur ini mendukung pencatatan peristiwa untuk keperluan audit dan pemecahan masalah.
- 8. Alat ini dapat mengirimkan laporan melalui email setelah suatu operasi.
- 9. Ini mendukung skrip FTP yang lebih canggih.
Dalam banyak kasus, DriveHQ CommandFTP dapat langsung menggantikan klien FTP Windows. Keduanya memiliki sintaks dan parameter baris perintah yang serupa. Namun, DriveHQ CommandFTP menawarkan lebih banyak fitur. Ia dapat menangani tugas transfer file yang rumit hanya dengan satu perintah. Dengan dukungannya untuk SFTP, Anda dapat menulis file skrip FTP, tetapi menjalankannya dengan server SFTP.
2. Sintaks dan Parameter CommandFTP DriveHQ
Sintaksis
cmdftp FTP_SERVER [-u:USERNAME] [-p:PASSWORD] [-i] [-A] [-k:"PRIVATE_KEY_FILE"] [-s:"FTP_SCRIPT_FILE"] [-d:"LOG_FILE"] [-m:"SOURCE_FTP_SERVER", "DESTINATION_FTP_SERVER"] [CMDOPTIONS]
cmdftp [-s:"FTP_SCRIPT_FILE"] [-d:"logfile"]
Parameter
| Parameter |
Keterangan |
| FTP_SERVER |
Nama server FTP/SFTP atau alamat IP seperti ftp.drivehq.com, atau ftp://ftp.drivehq.com atau ftps://ftp.drivehq.com. Ini wajib diisi kecuali jika parameter menyertakan -s:FTP_SCRIPT_FILE
|
|
| -u:USERNAME |
Menentukan nama pengguna akun FTP/SFTP. |
|
| -p:PASSWORD |
Menentukan kata sandi akun FTP/SFTP. |
|
| -k:"PRIVATE_KEY_FILE" |
Opsional. Menentukan jalur file kunci privat SFTP. |
|
| -s:"FTP_SCRIPT_FILE" |
Opsional. Menentukan jalur file skrip FTP. Jika parameter ini diberikan, maka parameter lain akan diabaikan, kecuali opsi "-d:LOG_FILE". |
Opsi Perintah
| /xo[:time] |
Kecualikan file lama |
|
| /xn[:time] |
Kecualikan file yang lebih baru |
|
| /xf:filenames |
Kecualikan file, file dipisahkan oleh koma |
|
| /xd:foldernames |
Kecualikan folder, folder dipisahkan oleh koma |
Opsi pencatatan
| -d:"LogFileName" |
Menentukan jalur file log. Jika menggunakan "-d" tanpa LogFileName, maka log akan ditampilkan di jendela konsol. |
3. Membuat File Skrip FTP
Skrip FTP sangat populer di kalangan administrator TI dan integrator sistem. Skrip ini banyak digunakan dalam pencadangan data otomatis dan transfer file. Skrip FTP memungkinkan Anda membuat file teks yang berisi daftar perintah dan input FTP. Anda kemudian dapat menjalankan perintah-perintah ini secara berurutan dalam satu kali eksekusi. Karena sebuah file skrip dapat berisi banyak perintah FTP, file tersebut dapat menyelesaikan tugas transfer file yang sangat canggih.
Pembuatan skrip FTP dengan klien FTP Windows bawaan sangat terbatas: Hanya mendukung FTP biasa, yang tidak aman; hanya mendukung Active Model FTP, yang sering diblokir oleh router/firewall. DriveHQ CommandFTP mendukung sebagian besar fitur klien FTP Windows; selain itu, ia mendukung banyak fitur yang tidak tersedia di klien FTP Windows. DriveHQ CommandFTP kompatibel dengan semua server FTP standar.
Untuk menulis file skrip FTP, Anda dapat menjalankan perintah FTP dalam mode interaktif terlebih dahulu. Buka jendela command prompt, ketik perintah berikut seperti yang ditunjukkan pada tangkapan layar di bawah ini:
Perintah-perintah ini biasanya meliputi: Menghubungkan ke server FTP, masuk ke server, mencantumkan file/folder dalam direktori, mengubah direktori saat ini, mengunggah/mengunduh/menghapus file, dan sebagainya. Jika Anda hanya sesekali menggunakan FTP, maka metode di atas sudah cukup. Namun, jika Anda perlu berulang kali mentransfer/mencadangkan/menghapus file, misalnya sebagai bagian dari tugas pencadangan terjadwal, atau EDI (Electronic Data Interchange) dengan perusahaan lain, Anda dapat dengan mudah menulis file skrip yang dapat digunakan berulang kali. Dipadukan dengan Penjadwal Tugas yang didukung oleh sistem operasi, Anda dapat mengotomatiskan proses bisnis.
Contoh File Skrip FTP
File skrip FTP memiliki perintah/input yang sama seperti yang digunakan dalam sesi FTP interaktif. Pada dasarnya, Anda hanya perlu membuat file teks di editor teks (misalnya Notepad), dan mengetikkan perintah dan input seperti yang Anda lakukan dalam mode interaktif. CommandFTP DriveHQ memiliki antarmuka yang sangat mirip dengan klien FTP Windows. Perintah-perintah berikut dapat dijalankan baik di klien FTP Windows maupun klien CommandFTP DriveHQ. Untuk menggunakan CommandFTP, ketikkan cmdftp, bukan ftp. Contoh::
C:\>ftp
ftp> open ftp.drivehq.com
Connected to ftp.drivehq.com.
220 Welcome to the most popular FTP hosting service! Save on hardware, software,
hosting and admin. Share files/folders with read-write permission. Visit http:/
/www.drivehq.com/ftp/;
User (ftp.drivehq.com:(none)): dhqdemo
331 User name ok, need password.
Password: xxxxxxxxx
230 User dhqdemo logged on.
ftp> cd test
250 CWD command successful. "/test" is current directory.
ftp> delete orders.xml.bak
550 File not found.
ftp> rename orders.xml orders.xml.bak
350 File exists, ready for destination name.
250 File "/test/orders.xml" renamed successfully.
ftp> put c:\test\orders.xml
200 Port command successful.
150 Opening BINARY mode data connection for file transfer.
226 Transfer complete
ftp: 41 bytes sent in 0.06Seconds 0.65Kbytes/sec.
ftp> quit
221 Bye
C:\>
Seperti yang Anda lihat, perintah-perintah ini akan:
- Masuk ke server FTP: ftp.drivehq.com;
- Masukkan nama pengguna dan kata sandi;
- Ubah ke direktori lokal "c:\test";
- Ubah ke direktori FTP "/test";
- Hapus file "Orders.xml.bak" (jika ada) di server FTP;
- Ubah nama file "Orders.xml" (jika ada) menjadi "Orders.xml.bak" di server FTP;
- Unggah file lokal "Orders.xml" ke server FTP;
- Keluar
Anda dapat menjalankannya di jendela perintah untuk men-debug kode sebelum menyimpannya ke dalam file skrip. Isi skrip akan seperti berikut ini:
open ftp.drivehq.com
USERNAME
xxxxxxxxx
cd test
delete orders.xml.bak
rename orders.xml orders.xml.bak
put c:\test\orders.xml
quit
Skrip FTP di atas dapat dijalankan setiap hari untuk secara otomatis mentransfer informasi pesanan baru ke server FTP. Skrip ini akan mengunggah file "Orders.xml" terbaru ke server FTP; sebelum mengunggah file, skrip akan mengganti nama (membuat cadangan) file sebelumnya.
Untuk menjalankan skrip FTP, Anda cukup mengeksekusi perintah FTP dengan opsi -s. Dengan klien FTP Windows, Anda dapat menggunakan:
ftp -s:ftpscript.txt
Dengan klien DriveHQ CommandFTP, Anda dapat menggunakan
cmdftp -s:ftpscript.txt
Skrip FTP dengan Parameter
Skrip FTP di atas bersifat statis. Skrip ini dapat dijalankan berulang kali, tetapi tidak terlalu fleksibel. Misalnya, jika Anda perlu mentransfer data untuk beberapa klien, Anda mungkin ingin menggunakan folder yang berbeda. Untuk menggunakan kembali skrip FTP yang sama, skrip tersebut perlu mendukung parameter tambahan. Ada dua solusi:
(1) Gunakan file skrip batch untuk membuat file skrip FTP secara dinamis. Skrip batch Windows dapat menerima parameter baris perintah. Jika Anda menggunakan klien FTP Windows, ini adalah satu-satunya solusi.
(2) DriveHQ CommandFTP mendukung parameter tambahan.
Dengan metode pertama, Anda perlu membuat file batch, misalnya test.bat. Simpan file tersebut di folder C:\test. Anda dapat menjalankan file batch dengan mengetikkan perintah berikut:
c:\test\test.bat PARAM1 PARAM2 ...
File test.bat akan seperti ini:
@echo off
echo open ftp.drivehq.com> ftpscript.txt
echo USERNAME>> ftpscript.txt
echo PASSWORD>> ftpscript.txt
echo cd %1>> ftpscript.txt
echo delete %2.bak>> ftpscript.txt
echo rename %2 %2.bak>> ftpscript.txt
echo put c:\%1\%2>> ftpscript.txt
echo quit>> ftpscript.txt
Dengan cara ini, Anda dapat meneruskan argumen dari file batch ke file skrip FTP. Skrip batch yang sama dapat digunakan kembali untuk perusahaan yang berbeda, misalnya:
c:\test\test.bat c:\OrdersOfCompanyA ordersOfCompanyA.xml
c:\test\test.bat c:\OrdersOfCompanyB ordersOfCompanyB.xml
Dengan DriveHQ CommandFTP, Anda dapat menjalankan skrip FTP dengan argumen tambahan. Dengan cara ini, Anda tidak perlu membuat file skrip batch. Anda cukup menjalankan skrip FTP dengan perintah berikut:
cmdftp -s:ftpscript.txt argument1 argument2 argument3 ...
File skrip FTP perlu sedikit dimodifikasi sebagai berikut:
# %1 is like "test", %2 is like "orders.xml"
# This file is saved as c:\temp\ftpscript2.txt
# to run it, use:
# cmdftp -s:c:\temp\ftpscript2.txt -%1:test -%2:orders.xml
open ftp.drivehq.com
USERNAME
PASSWORD
cd /%1
delete /%1/%2.bak
rename /%1/%2 /%1/%2.bak
put c:\%1\%2
quit
Dalam file skrip di atas, nama folder diganti dengan %1, dan nama file diganti dengan %2. Untuk menjalankan skrip FTP, Anda harus memberikan parameter ini sebagai argumen baris perintah.
cmdftp -s:c:\temp\ftpscript2.txt -%1:test -%2:orders.xml
Saat DriveHQ CommandFTP menjalankan file skrip, ia akan mengganti %1 dengan "test" dan %2 dengan "orders.xml".
4. Otomatiskan transfer file dengan Penjadwal Tugas Windows
Baik Anda menggunakan file batch, atau langsung menggunakan DriveHQ CommandFTP, Anda dapat menjadwalkan transfer file di Penjadwal Tugas Windows. Anda dapat menjadwalkan tugas untuk dijalankan setiap hari, mingguan, atau bulanan. Di Pengaturan Lanjutan, Anda bahkan dapat mengatur tugas untuk dijalankan setiap beberapa jam atau menit. Anda dapat mengatur waktu dalam sehari untuk memulai tugas. Untuk meluncurkan Penjadwal Tugas, ketik "Penjadwal tugas" di kotak pencarian, lihat tangkapan layar di bawah ini:
Klik Penjadwal Tugas, maka Penjadwal Tugas Windows akan diluncurkan.
Untuk membuat tugas, klik "Buat Tugas Dasar".
Masukkan nama dan deskripsi tugas, lalu klik Berikutnya.
Pilih jadwal tugas Anda. Anda dapat memilih harian, mingguan, dan bulanan. Jika Anda ingin menjalankan tugas setiap jam, Anda dapat melakukannya di Pengaturan Lanjutan nanti. Klik Berikutnya untuk mengatur Tindakan.
Di halaman Tindakan, pilih "Mulai program", lalu klik Berikutnya.
Telusuri untuk memilih DriveHQ CommandFTP (cmdftp.exe) sebagai program. Tambahkan parameter baris perintah di kotak teks "Tambahkan Argumen". "Mulai di" bersifat opsional. Anda dapat mengaturnya ke folder yang sama dengan file EXE. Klik Berikutnya untuk menyelesaikan pembuatan tugas.
Untuk mengakses Pengaturan Lanjutan, klik "Pustaka Jadwal Tugas", Anda dapat melihat daftar tugas terjadwal. Klik dua kali pada tugas "Unggah Pesanan", Anda dapat mengedit pengaturan tugas.
Perlu dicatat bahwa secara default, tugas hanya akan berjalan saat pengguna masuk. Anda dapat mengubah pengaturan di sini untuk menjalankan tugas bahkan saat pengguna tidak masuk.
5. Sinkronisasi Folder Otomatis menggunakan DriveHQ CommandFTP
DriveHQ CommandFTP mendukung pencermian folder. Sinkronisasi folder lokal dengan folder FTP sangat mudah. Cukup gunakan perintah berikut:
cmdftp FTP_SERVER -u:username -p:password -m:"LOCAL_FOLDER|FTP_FOLDER"
Dengan menggunakan Penjadwal Tugas Windows, Anda dapat menjalankan perintah ini untuk menyinkronkan kedua folder secara berkala.
6. Referensi Perintah FTP
Setelah Anda masuk ke server FTP, Anda dapat mengirim perintah FTP ke server FTP tersebut. Klien FTP Windows mendukung perintah-perintah berikut.
Harap dicatat bahwa perintah-perintah ini tidak sama dengan Perintah FTP yang didefinisikan dalam Protokol FTP.
Setiap perintah protokol FTP biasanya hanya menangani satu masalah sederhana. Sebuah perintah FTP di klien FTP Windows dapat menggunakan beberapa perintah protokol FTP.
DriveHQ CommandFTP mirip dengan klien FTP Windows. Aplikasi ini mendukung perintah dan sintaks yang serupa. Selain itu, aplikasi ini juga mendukung beberapa perintah FTP tingkat lanjut khusus DriveHQ, misalnya perintah untuk menyalin, memindahkan, mengunggah, mengunduh, atau menghapus folder.
6.1 Perintah Klien FTP Windows
Klien FTP Windows (ftp.exe) mendukung perintah FTP berikut ini:
| Perintah FTP |
Keterangan |
| ! |
Perintah ini beralih antara sistem operasi lokal dan server FTP. Saat Anda masuk ke server FTP, secara default akan menggunakan server FTP tersebut. Jika Anda ingin menjalankan perintah secara lokal, Anda biasanya dapat menggunakan !CMD_NAME, e.g. !dir, !mkdir, dll. |
| ? |
Menampilkan informasi Bantuan. |
| append |
Menambahkan ke sebuah file. |
| ascii |
Atur mode transfer ASCII. |
| bell |
Aktifkan "Bunyi bip saat perintah selesai". |
| binary |
Atur mode transfer biner. |
| bye |
Putuskan koneksi sesi FTP dan keluar. |
| cd |
Ubah direktori. |
| close |
Hentikan sesi FTP. |
| delete |
Menghapus sebuah file. |
| debug |
Aktifkan atau nonaktifkan mode debugging. |
| dir |
Menampilkan daftar file dan subfolder dalam sebuah direktori.
|
| disconnect |
Putuskan koneksi sesi FTP. |
| get |
Mengambil file dari server FTP jarak jauh. |
| glob |
Aktifkan atau nonaktifkan globbing. Saat dimatikan, karakter wildcard dalam nama file (dalam meletakkan Dan mendapatkan perintah) ditafsirkan secara harfiah. |
| hash |
Aktifkan atau nonaktifkan pencetakan "#" untuk setiap buffer yang ditransfer. |
| help |
Tampilkan informasi Bantuan; biasanya gunakan help COMMAND_NAME. |
| lcd |
Tampilkan direktori kerja lokal saat ini jika diketik sendiri; jika tidak, ubah direktori kerja lokal. |
| literal |
Kirim perintah sembarang ke server FTP yang terhubung dengan respons satu baris yang diharapkan. |
| ls |
Daftar file di folder FTP. |
| mdelete |
Menghapus beberapa file sekaligus di server FTP. |
| mdir |
Menampilkan daftar file/subfolder dari beberapa direktori FTP. |
| mget |
Unduh beberapa file dari server FTP ke folder kerja lokal Anda. |
| mkdir |
Buat direktori baru. |
| mls |
Daftar isi dari beberapa direktori FTP. |
| mput |
Unggah beberapa file lokal ke server FTP. |
| open |
Hubungkan ke server FTP. |
| prompt |
Mengaktifkan atau menonaktifkan permintaan interaktif pada beberapa perintah. |
| put |
Unggah satu file ke server FTP. |
| pwd |
Cetak direktori kerja pada server FTP. |
| quit |
Putuskan koneksi dari server FTP dan keluar. |
| quote |
Sama seperti perintah literal (Kirim perintah ftp sembarang). |
| recv |
Mengunduh/menerima file dari server FTP. |
| remotehelp |
Dapatkan bantuan dari server jarak jauh. |
| rename |
Mengganti nama file di server FTP. |
| rmdir |
Menghapus direktori di server FTP. |
| send |
Kirim satu file. |
| status |
Menampilkan status opsi saat ini. |
| trace |
Aktifkan atau nonaktifkan pelacakan paket. |
| Type |
Atur jenis transfer file. |
| user |
Kirim informasi pengguna baru (nama pengguna). |
| verbose |
Aktifkan atau nonaktifkan mode verbose. |
6.2 Perintah FTP Tingkat Lanjut DriveHQ
DriveHQ CommandFTP mendukung beberapa perintah FTP tingkat lanjut lainnya:
| Perintah FTP |
Keterangan |
| download |
Unduh folder atau file.
Sintaksis: Download [FTP-FILEorFOLDER-PATH] [LOCAL-FILEorFOLDER-PATH]
|
| upload |
Unggah folder atau file.
Sintaksis: Upload [LOCAL-FILEorFOLDER-PATH] [FTP-FILEorFOLDER-PATH]
|
| mirror |
Mencerminkan folder lokal dan folder FTP.
Sintaksis: MIRROR [LOCAL-FOLDER-PATH] [FTP-FOLDER-PATH]
|
| deleteoldfiles |
Di dalam folder yang ditentukan, hapus file yang lebih lama dari x hari.
Sintaksis: deleteoldfiles [FTP-PATH] /xo:[time]
|