Cara debug skrip shell?

Cara debug skrip shell?

Debugging adalah proses mencari dan menyelesaikan pepijat dalam program komputer. Ia memberikan output besar pada runtime untuk menganalisis setiap bahagian pelaksanaan. Yang membantu mengenal pasti punca kesilapan dalam skrip. Dalam tutorial ini, anda akan belajar bagaimana debug skrip shell pada baris arahan Linux.

Kita boleh debug skrip shell dalam dua cara. Sama ada menambah arahan debugging dalam skrip shell dengan menggunakan "Tetapkan -xv" atau menggunakan -xv pada baris arahan semasa melaksanakan skrip.

Menambah arahan debug dalam skrip shell

Mari buat skrip kecil untuk menguji proses penyahpepijatan. Buat fail baru dan edit dalam editor teks:

Nano checkdebug.sh  

Tambahkan kandungan berikut ke fail:

#!/bin/bash set -xv # ini akan membolehkan debug cd/var/log/untuk saya dalam "*.log "; lakukan du -sh $ saya buat
1234567#!/bin/bash set -xv # ini akan membolehkan debugcd/var/log/untuk saya dalam "*.log "; do du -sh $ idone

Simpan perubahan dan tutup fail.

Seterusnya tetapkan kebenaran melaksanakan pada fail dan kemudian laksanakannya.

chmod +x checkdebug.sh  ./checkdebug.sh  

[Output Contoh]

cd/var/log/ + cd/var/log/for i in "*.log "; lakukan du -sh $ saya buat + untuk saya dalam '"*.log "' + du -sh boot.log mysqld.log post111.log post1121.log yum.log 0 boot.log 32k mysqld.Log 0 Post111.Log 0 Post1121.log 4.0k yum.log 

Berikan arahan debug dari baris arahan

Menggunakan pilihan ini, kami tidak perlu menambah "set -xv" dalam skrip shell. Buat skrip shell seperti di bawah

Nano checkdebug2.sh  
#!/bin/bash cd/var/log/for i in "*.log "; lakukan du -sh $ saya buat
123456#!/bin/bash cd/var/log/for i in "*.log "; do du -sh $ idone

dan laksanakan seperti di bawah

SH -XV CheckDebug2.sh  

[Output Contoh]

#!/bin/bash cd/var/log/ + cd/var/log/for i in "*.log "; lakukan du -sh $ saya buat + untuk saya dalam '"*.log "' + du -sh boot.log mysqld.log post111.log post1121.log yum.log 0 boot.log 32k mysqld.Log 0 Post111.Log 0 Post1121.log 4.0k yum.log