GNU/Linux >> Belajar Linux >  >> Linux

Mengapa Saya Tidak Dapat Menggunakan Cd Dalam Skrip Bash??

Pertanyaan ini sudah memiliki jawaban di sini :Script untuk mengubah direktori saat ini (cd, pwd)

(11 jawaban)
Tutup 3 tahun yang lalu.

Saya membuat skrip yang sangat sederhana

#!/bin/bash
mkdir $1 && cd $1

ketika saya mengeksekusi

myscript test

Itu membuat direktori pengujian tetapi tidak langsung masuk ke dalam. Saya tidak mengerti mengapa, pada fedora 27 saya, skrip ini berfungsi tanpa masalah apa pun, tetapi pada debian saya, perilaku ini terjadi. Bisakah seseorang menjelaskan mengapa saya mengalami bug ini.

Jawaban yang Diterima:

Anda bisa dan itu bekerja dengan sempurna. Tetapi ketika skrip selesai, lingkungannya (termasuk nya direktori kerja) dihancurkan.

Coba source myscript test untuk mengeksekusi skrip Anda seolah-olah Anda telah mengetikkan perintahnya ke dalam shell interaktif Anda yang sebenarnya dan direktori kerja Anda akan telah diubah.


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

  2. Cara Menggunakan if else Conditionals Statement di Bash Script

  3. Mengapa Kami Menggunakan "./" (dot Slash) Untuk Mengeksekusi File Di Linux/unix?

  1. Mengapa Saya Tidak Dapat Mendapatkan Output Pgrep Tepat Untuk Variabel Pada Skrip Bash?

  2. Mengapa Saya Tidak Dapat Keluar dari Spasi Pada Skrip Bash??

  3. Tambahkan skrip bash ke jalur

  1. Mengapa Skrip Bash Tidak Mengenal Alias?

  2. Bagaimana cara menjalankan skrip bash?

  3. Bagaimana cara menjalankan skrip bash melalui jalur absolut?