Pageferry
Alur Kerja

Jalankan skrip Bash, dari buka folder hingga exit code

03
Jalankan skrip

Jalankan skrip Bash dengan argumen di WSL atau via SSH

Skrip Bash dapat dijalankan dengan tiga cara: bash script.sh arg1 arg2, ./script.sh setelah chmod +x (berjalan berkat baris shebang), atau melalui builtin exec yang mengganti shell dan tidak pernah kembali. Bentuk pertama paling mudah karena tidak memerlukan perubahan izin. Shell menjalankan perintah di lingkungan yang Anda pilih, yaitu WSL di PC Anda atau sistem Linux yang Anda miliki yang diakses melalui SSH, dan kartu di obrolan menampilkan output asli serta exit code. Anda menentukan argumennya, sehingga Anda dapat menguji kasus normal dan kasus gagal dalam satu percakapan. Banyak orang bertanya bentuk mana yang dipilih: gunakan bash script.sh saat pengujian karena berjalan bahkan saat file tidak memiliki izin eksekusi, dan beralih ke ./script.sh setelah skrip final dan dimulai dengan baris shebang. Bentuk apa pun yang Anda gunakan, status exit adalah angka yang sama, dari 0 hingga 255, dan 0 selalu berarti skrip berakhir dengan sukses.

01

Buka folder

Pilih folder yang berisi skrip Anda sebagai folder kerja; alat file seperti read_file dan grep bekerja di dalamnya. Alat file bekerja di dalam folder itu, sementara Shell, web, dan SSH tidak terbatas pada folder tersebut.

02

Pilih mode persetujuan

Gunakan Ask first untuk melihat setiap perubahan sebagai diff, atau Plan only untuk membaca rencana terlebih dahulu. Auto-run bertindak segera. Ask first hanya menjeda sebelum tindakan yang mengubah sesuatu.

03

Minta untuk menjalankan

Jelaskan jalannya secara sederhana, misalnya: jalankan skrip dengan argumen test. Sebutkan WSL atau server Anda jika Anda memiliki keduanya. Sebutkan skrip dan argumennya secara tepat.

04

Baca hasilnya

Buka kartu untuk melihat output dan exit code asli, lalu terima atau tolak setiap edit. Angka bukan nol adalah informasi. Jalankan lagi setelah setiap edit yang diterima. Bandingkan dengan hasil yang Anda harapkan.

Contoh skrip kecil

greet.sh
#!/usr/bin/env bash
# greet.sh - print a greeting a few times
set -eu
if [ "$#" -lt 1 ]; then
  echo "Usage: $0 NAME [COUNT]" >&2
  exit 2
fi
name="$1"
count="${2:-1}"
for i in $(seq 1 "$count"); do
  echo "Hello, $name ($i)"
done
exit 0

greet.sh berhenti dengan baris penggunaan dan exit code 2 saat nama hilang, menerima hitungan opsional dengan default 1, dan hanya mencetak salam dalam loop. Bacakan sekali sebelum dijalankan: tidak ada sudo, tidak ada unduhan, dan tidak ada yang memindahkan atau menghapus file, sehingga aman untuk diuji di mesin apa pun yang Anda miliki. Baris demi baris: shebang menentukan interpreter, set -eu berhenti saat error dan variabel tidak disetel, pengujian $# menghitung argumen, dan loop for hanya melakukan echo.

Jalankan skrip dalam empat langkah kecil

Buat file skrip

Mulailah dengan folder kerja kosong. Minta agen untuk menulis contoh di atas, dan write_file membuat greet.sh di folder itu. Buka kartu dan baca file baris demi baris: baris pertama adalah shebang yang menentukan interpreter, set -eu menghentikan skrip saat error dan variabel tidak disetel, dan pengecekan $# melindungi bagian lain dari nama yang hilang. Di bawah Ask first file baru menunggu persetujuan Anda sebelum ditulis. Belum ada yang dijalankan. Cabang penggunaan skrip ini memilih 2 untuk penggunaan yang salah, yang merupakan konvensi umum. Terima file hanya ketika Anda memahami setiap baris, dan jika tidak, minta agen untuk menjelaskannya. Edit yang ditolak membuat folder tetap tidak berubah.

Jalankan dan baca exit code

Orang yang mencari “bash execute script” biasanya menginginkan satu baris: bash greet.sh test. Minta agen untuk menjalankannya, dan Shell memulai perintah di lingkungan obrolan Anda, seperti WSL, dan mengirimkan output asli serta exit code asli. Perluas kartu untuk output lengkap. Lalu minta jalankan yang sama tanpa argumen, dan Anda seharusnya melihat baris penggunaan dan exit code 2. Exit code untuk aplikasi cli adalah angka dari 0 hingga 255 yang dibaca oleh pemanggil, dan 0 berarti sukses. Exit code 127 berarti perintah tidak ditemukan dan 126 berarti file tidak dapat dijalankan, sehingga dua angka ini menunjukkan salah ketik, program yang hilang, atau izin eksekusi yang hilang.

Baca argumen di dalam skrip

read_file menampilkan skrip dan grep menemukan di mana $1 dan $2 digunakan, sehingga Anda dapat memeriksa bahwa setiap argumen memiliki nilai default atau pesan error. Berikut cara mengurai argumen opsional: skrip melakukan loop dengan getopts, dan dengan hanya satu atau dua nilai, $1 dan ${2:-1} biasa sudah cukup. Alias dengan argumen tidak berperilaku seperti fungsi karena alias hanya mengganti kata yang diketik dengan teks, jadi gunakan fungsi ketika nilai harus berada di tengah. Minta agen untuk mengubah satu hal, misalnya default hitungan, dan baca diff yang ditunjukkan edit_file. Lalu jalankan skrip lagi dan bandingkan exit code baru dengan yang lama. Plan only dapat mendaftar parameter yang dipahami skrip tanpa menjalankan apa pun.

Jalankan skrip yang sama di server yang Anda miliki

Langkah yang sama berlaku ketika lingkungan kerja adalah sistem Linux yang Anda miliki, diakses melalui SSH. Alat file tetap bekerja di folder kerja obrolan, sementara perintah Shell berjalan di lingkungan yang Anda pilih, jadi periksa kartu mana yang dituju. Builtin exec, yang orang cari sebagai “bash exec script”, mengganti shell dengan perintah lain dan tidak pernah kembali, sehingga apa pun setelahnya tidak berjalan dan exit code adalah dari perintah baru. Simpan salinan sebelum skrip memindahkan atau menghapus file, jalankan dengan echo terlebih dahulu sebagai uji coba, dan gunakan hanya mesin yang Anda izinkan untuk mengelola. Baca kartu terakhir sebelum menutup obrolan. Saat meneruskan semua nilai ke perintah lain, tulis "$@" dalam tanda kutip ganda agar setiap nilai mempertahankan bentuknya.

Pageferry untuk Windows

Uji skrip Bash di mesin Anda sendiri

Unduh Pageferry ↗