Apa itu Linux untuk VMS DCL "ON ERROR"?

8

Menggunakan skrip perintah VMS DCL seseorang dapat menangkap kesalahan dengan menggunakan on errorperintah:

$ on error then goto MyErrorHandler
$ directory samiam.txt
$ delete x.txt
$ exit
$MyErrorHandler:
$ print "Something."

Bagaimana seseorang melakukan ini di Linuxland?

Dalam contoh kesalahan dengan directoryatau deleteakan menyebabkan kontrol untuk pergi ke MyErrorHandler.

CW Holeman II
sumber

Jawaban:

8

Saya pikir Anda menginginkan fungsi trap , khususnya:

error_func() 
{
    echo 'An error occurred!'
    exit 1
}

trap error_func ERR

Kesalahan nanti akan melompat ke fungsi. Ini didukung oleh setidaknya bash, zsh, dan ksh.

Matthew Flaschen
sumber