Cara mengubah direktori menggunakan skrip


10

Saya punya skrip ini

#!/bin/bash
cd /home/user/somedir
pwd

berfungsi seperti yang diharapkan, tapi saya ingin skrip ini untuk mengirim saya ke / home / user / somedir, tapi saya tetap di dir yang sama.

Bagaimana cara menulis skrip yang akan memindahkan saya (di gnome-terminal) ke / home / user / somedir?


Jawaban:


14

Anda perlu sourceskrip Anda. Jika tidak, ia akan dijalankan dalam subkulit terpisah, mengubah direktori kerja subkulit tetapi tidak dari shell tempat Anda menjalankannya.

Untuk sumbernya:

. myfile.sh

atau

source myfile.sh

Anda dapat membaca lebih lanjut di sini


Saya hanya akan menambahkan itu .... UAdadapter jika Anda menjalankan skrip shelll seperti sh myfile.sh atau ./myfile.sh itu akan berjalan seperti dijelaskan danjil. Salah satu dari opsi danjil harus bekerja untuk Anda.
itnet7

3

Gunakan exec bashdi akhir

Skrip bash beroperasi pada lingkungannya saat ini atau di lingkungan anak-anaknya, tetapi tidak pernah di lingkungan orang tuanya.

Namun, pertanyaan ini sering ditanyakan karena seseorang ingin dibiarkan di bash prompt di direktori tertentu setelah eksekusi skrip bash dari direktori lain.

Jika ini masalahnya, jalankan saja instance bash anak di akhir skrip:

#!/bin/bash
cd /home/user/somedir
exec bash
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.