GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara menjalankan skrip .sh dari jalur mana pun di terminal?

Anda harus menyalin atau menautkan skrip ke direktori yang ada di $PATH. Biasanya /usr/bin dan /usr/local/bin/ berada di jalur jadi ini adalah lokasi yang bagus untuk menautkan atau menyalin skrip.

ln -s /path/to/your/script /usr/local/bin

Jika Anda bukan root, Anda juga perlu sudo perintah itu atau jalankan sebagai pengguna root.


Salah satu opsinya adalah dengan mengetikkan jalur ke skrip:

~/Desktop/script

Ini berfungsi dengan baik, tetapi agak sulit.

Inilah yang dimaksud dengan PATH variabel lingkungan adalah untuk. Dan itulah $HOME/bin adalah untuk.

  1. Buat sendiri sebuah direktori $HOME/bin . Letakkan semua skrip yang dapat dieksekusi di dalamnya (buat agar dapat dieksekusi dengan chmod +x script jika perlu). Dengan cara ini, ada satu tempat untuk mencari skrip yang ingin Anda jalankan.
  2. Tambahkan $HOME/bin ke PATH Anda . Saya meletakkan milik saya di depan:PATH="$HOME/bin:$PATH , tetapi Anda dapat meletakkannya di belakang jika mau.
  3. Perbarui .profile Anda atau .bash_profile (atau mungkin .bashrc ) untuk menyetel PATH . Waspadalah terhadap PATH yang terus berkembang.

Seperti yang dicatat tripleee, setelah perintah dipasang di direktori di PATH , Anda tidak lagi mengetik ./script , tetapi hanya script . Ini persis seperti Anda mengetik ls dan bukan /bin/ls , dll. Setelah program terinstal di direktori pada PATH Anda , ini (untuk banyak tujuan) tidak dapat dibedakan dari perintah yang disediakan sistem.

Saya memiliki sekitar 500 skrip dan program di $HOME/bin saya direktori.

Perhatikan bahwa ini tidak memerlukan hak istimewa apa pun. Jika Anda memiliki akses administrator ke mesin Anda dan menurut Anda pengguna lain mungkin menganggap perintah Anda berguna, maka Anda dapat menginstal skrip/program di salah satu direktori yang disediakan sistem pada PATH Anda . Namun, biasanya lebih baik untuk tidak menambahkan program ke salah satu dari:

  • /bin
  • /usr/bin
  • /sbin
  • /usr/sbin

Sering/biasanya ada /usr/local/bin yang merupakan tempat yang cocok untuk perintah yang digunakan secara luas yang tidak disediakan oleh sistem.

Akan lebih baik menggunakan chmod a+x,go-w script; skrip Anda tidak boleh ditulis oleh orang lain. Anda bahkan dapat menggunakan chmod 555 script atau chmod 755 script . Saya cenderung membuat skrip saya tidak dapat ditulis. Dengan begitu, saya harus melalui proses perubahan formal dengan sistem kontrol versi. Artinya, risiko perubahan yang tidak terkendali berkurang.


Linux
  1. Bagaimana Mengirim Perintah ke Terminal Apa Pun?

  2. Dari Mana Skrip Shell Dijalankan?

  3. Cara menjalankan skrip Python dari shell

  1. Bagaimana saya bisa menjalankan fungsi dari skrip di baris perintah?

  2. Bagaimana cara membuat file di Linux dari jendela terminal?

  3. Bagaimana cara menjalankan skrip python di terminal (ubuntu)?

  1. Cara keluar dari SSH gelandangan di terminal

  2. Bagaimana cara menjalankan skrip bash melalui jalur absolut?

  3. Jalankan skrip dari mana saja