Cara mencari nama fail skrip dalam skrip bash

Cara mencari nama fail skrip dalam skrip bash

Perintah

SNAME = $ (Basename "$ (test -l" $ 0 "&& ReadLink" $ 0 "|| echo" $ 0 ")")

Semasa menjalankan skrip bash menggunakan terminal linux, nama skrip juga boleh diluluskan sebagai argumen pada $ 0. Tetapi jika kita menggunakan skrip penuh untuk dilaksanakan, ia akan menunjukkan laluan penuh sebagai hasil apabila nilai cetak $ 0. Oleh itu, gunakan perintah di atas dengan tepat hanya memberikan nama skrip. Ia juga mengendalikan jika anda menjalankan skrip bash menggunakan pautan simbolik.

Contoh:

Buat skrip bernama ujian.SH dan tambahkan kandungan berikut dalam skrip.

#!/bin/bash sname = $ (baseName "$ (test -l" $ 0 "&& readlink" $ 0 "|| echo" $ 0 ")") echo "Nama skrip anda $ sname" 

Mari laksanakan skrip ini dan periksa hasil.

 # ujian sh.sh 

Hasilnya akan seperti berikut:

Nama skrip anda adalah ujian.sh