Cara menyimpan kesalahan standar ke variabel dalam bash

Cara menyimpan kesalahan standar ke variabel dalam bash

Dalam bash, Anda dapat menyimpan output kesalahan standar perintah ke variabel dengan menggunakan '2> & 1' operator dan '$ ()' Sintaks Substitusi Perintah. Di Sini '2>' mengarahkan kembali pesan kesalahan & 1 ', yang mewakili output standar. Dalam kasus shell bash berfungsi sebagai perangkat output standar.

  • Misalnya, untuk menyimpan output kesalahan standar dari 'ls' Perintah untuk kesalahan bernama variabel, Anda dapat menggunakan perintah berikut:
    kesalahan = $ (ls tidak ada file 2> & 1)  
    Menyimpan kesalahan standar dalam variabel bash

    Atau, Anda dapat menggunakan '$?' parameter khusus untuk menyimpan status keluar dari suatu perintah ke variabel. Status keluar adalah nilai numerik yang menunjukkan apakah perintah itu berhasil atau tidak. Nilai '0' menunjukkan keberhasilan, sedangkan nilai bukan nol menunjukkan kesalahan.

  • Misalnya, untuk menyimpan status keluar dari 'ls' Perintah ke status bernama variabel, Anda dapat menggunakan perintah berikut:
    LS tidak ada file  status = $?  
  • Anda kemudian dapat menggunakan '$ Status' variabel untuk memeriksa status keluar dari 'ls' Perintah dan ambil tindakan yang tepat berdasarkan hasilnya. Misalnya: #!/usr/bin/env bash # pur perintah Anda di sini jika [$ status -ne 0]; Kemudian gema "Perintah terakhir gagal dengan kesalahan."Fi
    123456#!/usr/bin/env bash # pur perintah Anda di sinif [$ status -ne 0]; Kemudian gema "Perintah terakhir gagal dengan kesalahan."Fi

Ingatlah bahwa '$ ()' Sintaks Substitusi Perintah memungkinkan Anda untuk menjalankan perintah dan mengganti outputnya di tempatnya. Itu '2>' operator mengarahkan ulang output kesalahan standar dari perintah ke '& 1' stream, yang merupakan aliran output standar. Ini memungkinkan Anda untuk menangkap output standar dan output kesalahan standar dari perintah dalam satu variabel tunggal.