GNU/Linux >> Belajar Linux >  >> Linux

Perbedaan antara perintah dalam skrip bash dan perintah di terminal

Terminal Anda menjalankan sebuah shell (kemungkinan besar bash ), yang meminta perintah Anda dan menjalankannya.

Selain mode interaktif ini, Anda juga dapat menggunakan shell untuk menjalankan perintah dari file. Untuk menjalankan perintah di file Anda, Anda dapat memanggil shell secara langsung seperti bash script atau Anda dapat memulai file Anda dengan "shebang" #!/bin/bash dan membuatnya dapat dieksekusi (chmod +x script ). Kemudian Anda dapat memperlakukan skrip seperti biner dan menjalankannya misalnya sebagai ./script atau letakkan di tempat di mana Anda akan mencarinya. (echo $PATH )

Kemungkinan besar shell interaktif Anda dan shell yang digunakan untuk menjalankan adalah bash .Dari perspektif bash "hari pertama belajar linux" bekerja persis sama di kedua mode. - Belakangan Anda mungkin menemukan sedikit perbedaan. Jika Anda benar-benar ingin mengetahui secara detail, saya sarankan membaca man bash dan telusuri tempat yang menyebutkan "interaktif". (Anda dapat mencari halaman manual, dengan menekan / .)

Satu hal penting yang perlu diperhatikan adalah skrip dijalankan sebagai proses baru. Ini terutama berarti bahwa variabel yang diatur dalam skrip tidak terlihat di shell pemanggil.

$ export a=1
$ echo $a
1
$ bash -c 'echo $a;a=2;echo $a' # change the value in a script
1
2
$ echo $a # value not changed here
1
$ 

Tanpa ekspor a bahkan tidak terlihat oleh skrip bagian dalam.


Linux
  1. Perbedaan antara ${} dan $() di Bash

  2. Apa perbedaan antara menjalankan skrip Bash vs sumbernya?

  3. Perbedaan antara '{}' dan {} dalam perintah find?

  1. Pelajari Perbedaan Antara Perintah "su" dan "su -" di Linux

  2. Perbedaan antara pts dan tty

  3. Perbedaan antara perintah 'ifconfig' dan 'ip'

  1. Perbedaan Antara Perintah "su" dan "su -" di Linux

  2. Perbedaan Antara Perintah Menghentikan dan Mematikan?

  3. Perbedaan Antara [[ $a ==Z* ]] Dan [ $a ==Z* ]?