Dengan "direktori itu dipanggil dari" Anda tampaknya berarti direktori kerjanya. Anda dapat mengubah ini di dalam skrip menggunakan misalnya cd,, tetapi sebelum Anda melakukannya, pwdakan mencetaknya. Itu juga kemungkinan berada dalam variabel$PWD
Jika Anda memerlukan direktori kerja awal setelah mengubahnya, simpan saja di bagian atas skrip Anda (sebelum mengubahnya)
#!/bin/bash
initial_wd=`pwd`# ... do a lot of stuff ...# ⋮
cd "$initial_wd"
Jika Anda menggunakan ini untuk kembali ke direktori tempat Anda memulai, lihat juga pushddan popd.
@jordanm Memang ada, tapi itu belum tentu menjadi direktori kerja awal (misalnya, jika Anda telah menggunakan cddua kali)
derobert
$ OLDPWD adalah yang saya butuhkan; Saya menjalankan skrip bash dari CMD Prompt pada Win7 dan ini adalah variabel lingkungan yang menampung direktori tempat saya menjalankan skrip. Cheers
Jawaban:
Saat Anda menjalankan perintah di shell, proses baru mewarisi direktori kerja induk. Berikut adalah dua cara mendapatkan direktori kerja:
sumber
Dengan "direktori itu dipanggil dari" Anda tampaknya berarti direktori kerjanya. Anda dapat mengubah ini di dalam skrip menggunakan misalnya
cd
,, tetapi sebelum Anda melakukannya,pwd
akan mencetaknya. Itu juga kemungkinan berada dalam variabel$PWD
Jika Anda memerlukan direktori kerja awal setelah mengubahnya, simpan saja di bagian atas skrip Anda (sebelum mengubahnya)
Jika Anda menggunakan ini untuk kembali ke direktori tempat Anda memulai, lihat juga
pushd
danpopd
.sumber
cd
dua kali)