Cara Menemukan Direktori Tempat Bash Script Berada dari dalam Script

Cara Menemukan Direktori Tempat Bash Script Berada Dari Dalam Script



Saat bekerja dengan skrip bash, mengetahui lokasi skrip akan sangat membantu. Ini bisa sangat membantu saat bekerja dengan jalur file relatif, atau saat mencoba menjalankan skrip atau perintah lain dari dalam skrip. Pada artikel ini, kita akan melihat beberapa cara berbeda untuk menentukan direktori skrip bash dari dalam skrip itu sendiri.

Cara Menemukan Direktori Tempat Bash Script Berada dari dalam Script

Saat membuat skrip bash, Anda mungkin memerlukan lokasi skrip untuk mengotomatiskan berbagai tugas. Ada dua jenis jalur di Linux:

  • Jalur Kerabat: Relatif adalah direktori kerja saat ini.
  • Jalur Mutlak: Ini adalah path lengkap dari direktori dan file.

Salah satu cara paling umum untuk menentukan lokasi skrip bash adalah dengan menggunakan pwd memerintah. Itu pwd memerintah ( cetak direktori kerja) akan menampilkan direktori saat ini.







Jadi, dalam banyak situasi cukup menggunakan pwd perintah tidak berfungsi karena hanya memberikan jalur dari direktori yang saat ini berfungsi.



Misalnya, jika skrip ada di Download direktori dan dieksekusi dari Desktop maka output akan berisi /home/usr/Desktop bukan lokasi file skrip bash itu /home/usr/Unduhan .



Tutorial ini adalah tentang mendapatkan jalur direktori tempat file skrip bash berada dari dalam skrip.





Cara Mendapatkan Jalur Direktori Tempat File Skrip Bash Berada

Cara lain untuk menentukan direktori skrip Bash adalah dengan menggunakan dirname memerintah. Itu dirname perintah mengambil path file sebagai argumen dan mengembalikan bagian direktori dari path.

Menggunakan dirname perintah untuk menentukan direktori skrip, Anda akan memanggil perintah dengan path hingga komponen non-slash terakhir ke skrip sebagai argumen.



Untuk lebih jelasnya tentang dirname jalankan perintah berikut di terminal:

$ pria dirname

Hanya dirname tidak akan berfungsi, kita membutuhkan perintah lain tautan baca . Itu tautan baca perintah cetak menyelesaikan tautan simbolik. Dapatkan informasi lebih lanjut tentang perintah ini dengan menjalankan:

$ pria tautan baca

Sekarang, membuat skrip :

$ sudo nano myScript.sh

Dan ketik:

#!/bin/bash

gema 'Jalur skrip bash adalah $(namadir -- '$(tautan baca -f – '$0') ' ; ) ';

Untuk menjalankan skrip gunakan:

$ pesta myScript.sh

Mari kita ubah direktori dan lihat hasilnya:

Catatan: Dalam satu kasus skrip di atas tidak akan berfungsi jika file bersumber alih-alih dieksekusi seperti yang dapat dilihat pada keluaran berikut:

Keluarannya adalah /home/sam/Desktop sedangkan file skrip ada di /rumah/sam direktori.

Kesimpulan

Kesimpulannya, ada beberapa cara untuk menentukan direktori skrip bash dari dalam skrip itu sendiri. Itu dirname bersama tautan baca utilitas dapat digunakan untuk menentukan direktori skrip. Namun, cukup menggunakan pwd perintah tidak berfungsi karena hanya memberikan direktori yang saat ini berfungsi.