Penjelasan Lengkap Alat Baris Perintah Pihak Ketiga dalam Persekitaran ServBay
Sebagai sebuah persekitaran pembangunan web tempatan yang mantap, ServBay bukan sahaja mengintegrasikan pelayan web, pangkalan data, dan runtime bahasa pengaturcaraan yang biasa digunakan, malah turut menyertakan pelbagai alat baris perintah pihak ketiga yang sangat berguna untuk tugas harian pemaju. Alat-alat ini merangkumi pelbagai bidang penting seperti pemprosesan imej, komunikasi rangkaian, pemampatan & penyahmampatan fail, penyulitan data & keselamatan.
Dokumen ini bertujuan untuk mengupas secara terperinci alat baris perintah dalam persekitaran ServBay, menerangkan kegunaannya, dan memberikan contoh penggunaan asas untuk membantu pemaju memanfaatkan semua kemudahan yang disediakan ServBay.
Mengapa ServBay Menyertakan Alat-Alat Ini?
Sepanjang proses pembangunan web, selain menulis kod, pemaju sering memerlukan pelbagai tugas bantuan, seperti:
- Mengoptimumkan atau memproses sumber imej.
- Menguji antara muka API atau mendebug permintaan rangkaian.
- Mengurus atau memproses fail termampat.
- Menjana atau mengurus sijil & kunci SSL.
ServBay menyatukan alat baris perintah yang biasa digunakan ini ke dalam persekitaran, jadi pemaju tidak perlu memasang dan mengkonfigurasi alat-alat ini secara berasingan — semuanya boleh digunakan terus dalam sesi terminal ServBay, meningkatkan kecekapan dan kemudahan kerja dengan ketara.
Prasyarat
Sebelum menggunakan alat baris perintah berikut, sila pastikan:
- ServBay telah dipasang dan dijalankan dengan jayanya pada sistem macOS anda.
- Anda telah memasuki persekitaran ServBay melalui terminal ServBay atau terminal sistem yang telah dikonfigurasi dengan pembolehubah persekitaran ServBay, supaya dapat menggunakan alat-alat ini secara langsung.
Komponen Pemprosesan Imej
ServBay menampilkan beberapa alat baris perintah untuk pemprosesan imej, amat berguna untuk pemaju frontend dan backend yang kerap mengurus sumber media.
ImageMagick
ImageMagick ialah set alat dan pustaka baris perintah yang kaya dengan fungsi, menyokong lebih 200 format fail imej. Ia membolehkan anda mencipta, mengedit, menggabungkan, atau menukar imej bitmap dengan mudah.
Penggunaan Asas
Tukar format imej:
bashmagick convert input.jpg output.png
1Ubah saiz imej:
bashmagick convert input.jpg -resize 300x300 output.jpg
1Tambah watermark:
bashmagick convert input.jpg -gravity southeast -draw "text 10,10 'ServBay'" output.jpg
1
cwebp
cwebp ialah pengekod baris perintah dari Google untuk menukar imej kepada format WebP. WebP merupakan format imej moden yang biasanya menghasilkan saiz lebih kecil (lossless atau lossy) berbanding JPEG dan PNG, tanpa mengorbankan kualiti, sekali gus mempercepatkan masa muat laman web.
Penggunaan Asas
Tukar imej JPEG ke WebP:
bashcwebp input.jpg -o output.webp
1Tukar imej PNG ke WebP:
bashcwebp input.png -o output.webp
1Tetapkan kualiti pemampatan (contoh: faktor kualiti 80):
bashcwebp -q 80 input.jpg -o output.webp
1
jpegtran
jpegtran ialah alat penukaran JPEG lossless, membolehkan operasi seperti putaran, pembalikan dan transpose tanpa menyahmampat atau memampatkan semula imej, mengelakkan artefak pemampatan.
Penggunaan Asas
Putar imej JPEG 90 darjah mengikut arah jam:
bashjpegtran -rotate 90 input.jpg > output.jpg
1Balik imej JPEG secara mendatar:
bashjpegtran -flip horizontal input.jpg > output.jpg
1
djpeg
djpeg digunakan untuk menyahmampat fail JPEG ke format piksel yang lebih mentah (seperti PPM, PGM, BMP, atau Targa). Amat berguna jika anda ingin mengakses data piksel asal dari JPEG.
Penggunaan Asas
- Nyahmampat JPEG ke format PPM:bash
djpeg input.jpg > output.ppm
1
cjpeg
cjpeg adalah alat terbalik untuk djpeg, digunakan bagi memampatkan imej format PPM, PGM, BMP atau Targa kepada fail JPEG.
Penggunaan Asas
- Mampatkan PPM ke format JPEG:bash
cjpeg input.ppm > output.jpg
1
img2webp
img2webp digunakan untuk menggabungkan beberapa imej statik (seperti PNG, JPEG) menjadi satu fail WebP animasi.
Penggunaan Asas
- Gabungkan beberapa imej menjadi WebP animasi:bash(Pastikan
img2webp -o output.webp frame1.png frame2.png frame3.png
1frame*.png
adalah rangkaian bingkai imej yang tersusun dengan betul.)
Komponen Komunikasi Rangkaian
cURL
cURL ialah alat baris perintah dan pustaka yang sangat digunakan untuk pemindahan data melalui pelbagai protokol rangkaian. Ia penting untuk menguji API, memuat turun fail, serta berinteraksi dengan pelayan jauh. Dalam persekitaran ServBay, cURL telah tersedia untuk memudahkan debug rangkaian dan interaksi data oleh pemaju.
Penggunaan Asas
Hantar permintaan HTTP GET ke API contoh:
bashcurl -X GET https://api.servbay.demo/data
1Hantar permintaan HTTP POST dengan data:
bashcurl -X POST -d "param1=value1¶m2=value2" https://api.servbay.demo/data
1Muat turun fail dan simpan dengan nama asal:
bashcurl -O https://servbay.demo/file.zip
1Lihat permintaan dan tindak balas header:
bashcurl -I https://servbay.demo
1
Komponen Pemampatan & Penyahmampatan
ServBay menyertakan pelbagai alat pemampatan & penyahmampatan fail yang umum digunakan, memudahkan pemaju mengendalikan pelbagai format termampat.
bzip2
bzip2 ialah alat pemampatan cekap yang menggunakan Burrows-Wheeler Transform dan Huffman Coding. Ia biasanya menghasilkan fail lebih kecil berbanding gzip, namun kelajuan pemampatan/nyahmampatannya boleh jadi sedikit perlahan.
Penggunaan Asas
Mampatkan fail (fail asal akan digantikan dengan fail
.bz2
):bashbzip2 input.txt
1Nyahmampat fail (
.bz2
akan digantikan dengan fail asal):bashbunzip2 input.txt.bz2
1Nyahmampat ke output standard:
bashbzip2 -dc input.txt.bz2
1
gzip
gzip merupakan alat pemampatan paling popular, terutamanya di sistem UNIX & Linux. Ia menggunakan pengekodan Lempel-Ziv (LZ77) dan menawarkan kelajuan pemampatan & nyahmampat yang pantas.
Penggunaan Asas
Mampatkan fail (fail asal akan digantikan dengan fail
.gz
):bashgzip input.txt
1Nyahmampat fail (
.gz
digantikan dengan fail asal):bashgunzip input.txt.gz
1Nyahmampat ke output standard:
bashgzip -dc input.txt.gz
1
xz
xz adalah alat pemampatan cekap berasaskan algoritma LZMA2. Ia biasanya memberikan nisbah mampatan lebih tinggi berbanding gzip dan bzip2, tetapi kelajuan mampatan boleh lebih perlahan. Proses nyahmampatannya biasanya laju.
Penggunaan Asas
Mampatkan fail (fail asal digantikan dengan fail
.xz
):bashxz input.txt
1Nyahmampat fail (
.xz
digantikan dengan fail asal):bashunxz input.txt.xz
1Nyahmampat ke output standard:
bashxz -dc input.txt.xz
1
zstd
zstd (Zstandard) ialah algoritma pemampatan lossless yang pantas, dibangunkan oleh Facebook. Ia menawarkan keseimbangan hebat antara kelajuan dan nisbah mampatan, lazimnya jauh lebih laju daripada gzip dengan nisbah hampir setanding atau lebih baik.
Penggunaan Asas
Mampatkan fail (fail asal digantikan dengan fail
.zst
):bashzstd input.txt
1Nyahmampat fail (
.zst
digantikan dengan fail asal):bashunzstd input.txt.zst
1Nyahmampat ke output standard:
bashzstd -dc input.txt.zst
1
Komponen Penyulitan & Keselamatan
OpenSSL
OpenSSL ialah toolkit sumber terbuka yang sangat berkuasa untuk implementasi protokol SSL (Secure Sockets Layer) dan TLS (Transport Layer Security), serta menyediakan pelbagai fungsi kriptografi. Dalam ServBay, OpenSSL amat penting untuk menjana kunci, permohonan penandatangan sijil (CSR) dan pengurusan fail sijil SSL, terutamanya sewaktu menguji HTTPS secara tempatan atau digabungkan dengan ciri SSL ServBay (seperti ServBay User CA atau ACME).
Penggunaan Asas
Jana kunci peribadi RSA (2048 bit):
bashopenssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
1Jana kunci awam daripada kunci peribadi:
bashopenssl rsa -pubout -in private_key.pem -out public_key.pem
1Jana permohonan penandatangan sijil (CSR):
bashopenssl req -new -key private_key.pem -out request.csr
1(Selepas menjalankan perintah ini, anda perlu isikan maklumat berkaitan sijil seperti negara, organisasi, nama umum, dan lain-lain mengikut arahan pada paparan.)
Jana sijil self-signed (untuk ujian tempatan):
bashopenssl req -x509 -days 365 -key private_key.pem -in request.csr -out certificate.crt
1(Nota:
-in request.csr
mengandaikan anda sudah menjana CSR. Sekiranya anda ingin menjana kunci peribadi & sijil self-signed dengan satu perintah ringkas, terdapat juga cara singkat. Namun, ini hanya disarankan untuk ujian paling asas.)Lihat maklumat sijil:
bashopenssl x509 -in certificate.crt -text -noout
1
Perhatian
- Versi alat baris perintah ini bergantung kepada versi yang diintegrasikan dalam edisi ServBay anda.
- Semua alat boleh diakses terus dari sesi terminal sistem operasi. Jika anda tidak dapat menggunakannya, pastikan pembolehubah persekitaran ServBay (terutamanya PATH) telah ditetapkan dengan betul.
Rumusan
ServBay bukan sekadar persekitaran pembangunan web tempatan — ia juga menggabungkan pelbagai alat baris perintah pihak ketiga yang berguna, memperluaskan fungsi produk dengan ketara dan membantu pemaju melaksanakan tugas berkaitan pemprosesan imej, debug rangkaian, pengurusan fail dan keselamatan dengan lebih cekap. Dengan menguasai dan memanfaatkan alat terbina ini, pengalaman pembangunan anda pasti akan menjadi lebih produktif dan efisien.