GNU/Linux >> Belajar Linux >  >> Linux

Gunakan Ekstensi .sh Atau .bash Untuk Skrip Bash?

(Lihat Gunakan #!/bin/sh atau #!/bin/bash untuk kompatibilitas Ubuntu-OSX dan kemudahan penggunaan &POSIX)

Jika saya ingin skrip saya menggunakan bash shell, apakah menggunakan ekstensi .bash benar-benar memanggil bash atau apakah itu tergantung pada konfigurasi sistem / baris shebang pertama. Jika keduanya berlaku tetapi berbeda, mana yang lebih didahulukan?

Saya tidak yakin apakah akan mengakhiri skrip saya dengan .sh untuk hanya menunjukkan "skrip shell" dan kemudian baris pertama memilih shell bash (mis. #!/usr/bin/env bash ) atau apakah akan mengakhirinya dengan .bash (serta pengaturan baris 1). Saya ingin bash dipanggil.

Jawaban yang Diterima:

apakah menggunakan ekstensi .bash sebenarnya memanggil bash atau apakah itu bergantung
pada konfigurasi sistem / baris shebang pertama.

Jika Anda tidak menggunakan juru bahasa secara eksplisit, maka juru bahasa yang dipanggil ditentukan oleh shebang digunakan dalam naskah. Jika Anda menggunakan juru bahasa secara khusus maka juru bahasa tidak peduli ekstensi apa yang Anda berikan untuk skrip Anda. Namun, ekstensi ada untuk membuatnya sangat jelas bagi orang lain jenis skrip apa itu.

[[email protected] ~]$ cat ./ext.py
#!/bin/bash
echo "Hi. I am a bash script"

Lihat, .py ekstensi ke skrip bash tidak menjadikannya skrip python.

[[email protected] ~]$ python ./ext.py
  File "./ext.py", line 2
    echo "Hi. I am a bash script"
                                ^
SyntaxError: invalid syntax

Itu selalu bash naskah.

[[email protected] ~]$ ./ext.py
Hi. I am a bash script

Linux
  1. Mengapa Saya Tidak Dapat Menggunakan Cd Dalam Skrip Bash??

  2. 2 Skrip Perl Regresi Memori untuk Linux

  3. Bagaimana cara menyorot skrip Bash di Vim?

  1. Cara Menggunakan Kata Sandi Terenkripsi di Linux Bash Shell Script

  2. Cara Menggunakan if else Conditionals Statement di Bash Script

  3. Gunakan variabel Bash dalam skrip sbatch SLURM

  1. Menggunakan Bash untuk otomatisasi

  2. Spasi Untuk Variabel Dalam Skrip Bash?

  3. mengotomatiskan sesi telnet menggunakan skrip bash