Menggunakan sh
shell (tidak bash
), perintah mana di Linux / UNIX yang mencetak direktori saya saat ini?
$ *showmewhereiam*
/sys/kernel/debug
$
unix whereami
Menggunakan sh
shell (tidak bash
), perintah mana di Linux / UNIX yang mencetak direktori saya saat ini?
$ *showmewhereiam*
/sys/kernel/debug
$
unix whereami
Jawaban:
Coba pwd
.
$ pwd
/home/<username>
/dev
sesuatu tentang pengembangan (kode sumber atau sesuatu seperti itu)
Sementara jawaban umumnya adalah pwd
, perhatikan bahwa ini dapat memberikan hasil yang berbeda tergantung pada bagaimana Anda mencapai direktori yang diberikan, dan apakah rute termasuk tautan simbolik.
Misalnya, jika Anda memiliki direktori yang dipanggil real
dan tautan simbolis ke direktori yang dipanggil virtual
, dan Anda cd
ke virtual
direktori tersebut, maka pwd
akan ditampilkan virtual
nama direktori itu, meskipun direktori aktual Anda berada real
.
Untuk menampilkan direktori mendasar yang sebenarnya, gunakan salah satu pwd -P
atau readlink -f
(untuk jalur arbitrer):
$ mkdir nyata $ ln -s virtual nyata $ cd virtual $ pwd / home / nama pengguna / tmp / virtual $ pwd -P / home / nama pengguna / tmp / nyata $ readlink -f. / home / nama pengguna / tmp / nyata
Perhatikan bahwa shell sering mengganti pwd
perintah dengan versi internalnya sendiri, jadi pada sistem saya (RHEL6), meskipun pwd(1)
halaman buku panduan menyarankan bahwa itu --physical
akan berfungsi juga -P
, karena saya sedang menjalankan bash
, itu tidak:
$ pwd - fisik bash: pwd: -: opsi tidak valid pwd: penggunaan: pwd [-LP] $ / bin / pwd - fisik / home / nama pengguna / tmp / nyata $ / usr / bin / env pwd --fisik / home / nama pengguna / tmp / nyata
Seperti orang lain katakan, pwd
biasanya melakukan pekerjaan dengan cukup baik. Namun, saya ingin menambahkan ide yang telah membantu saya.
Pada semua shell yang umum digunakan saat ini, Anda dapat menyesuaikan tampilan command prompt. Saya suka menyesuaikan milik saya sehingga itu menunjukkan kepada saya nama komputer tempat saya berada dan direktori kerja saya. Dengan begitu, saya selalu tahu di mana saya berada. (Bagian nama komputer membantu saya menyadari jika jendela terminal yang saya gunakan telah digunakan untuk SSH ke server jarak jauh.) Misalnya, ketika saya membuka jendela terminal baru pada laptop saya, yang saya sebut Plastico, saya melihat ini:
Plastico ~> cd Desktop/
Plastico ~/Desktop> cd ~/Sites/raygunrobot.com
Plastico ~/Sites/raygunrobot.com> cd /usr
Plastico /usr>
Anda dapat melihat bahwa itu menyingkat direktori home saya sebagai ~
. Saya menemukan melakukan ini untuk terminal prompt saya sangat berguna - Saya selalu tahu sekilas persis di mana saya berada, bahkan lebih daripada saya akan dengan melihat jendela Finder.
Pada tcsh, saya melakukan ini dengan menambahkan set prompt = 'Plastico %~%# '
file .tcshrc saya di direktori home saya. Saya sudah melakukannya di ksh juga dengan menambahkan export PS1="Plastico $PWD $ "
ke file profil saya. Tapi sebagai pengguna Linux, Anda mungkin menggunakan Bash, yang saya tidak punya banyak pengalaman dengan (saya orang aneh seperti itu). Tapi sepertinya saya bisa melakukannya dengan menambahkan PS1="Plastico \w $ "
file .bashrc saya.
Sunting: Hanya memperhatikan status OP yang Anda minati, bukan bash. Baiklah; semoga orang menemukan ini bermanfaat terlepas.
Plastico /var/www/vhosts/myveryexcellentwebsite.com/public_html/wp-content/themes/myveryexcellenttheme/js/vendor/excellentjs/ >
atau sesuatu seperti itu.
$ pwd
/your/current/directory
$
pwd
berasal dari direktori kerja cetak .
Nama
pwd - cetak nama direktori saat ini / yang berfungsi
Ringkasan
pwd [OPSI] ...
Deskripsi
Cetak nama file lengkap dari direktori kerja saat ini.
-L , --logical
gunakan PWD dari lingkungan, bahkan jika itu mengandung symlink
-P , --fisik
hindari semua symlink
--membantu
tampilkan bantuan ini dan keluar
--versi
informasi versi keluaran dan keluar
CATATAN: shell Anda mungkin memiliki versi pwd sendiri, yang biasanya menggantikan versi yang dijelaskan di sini. Silakan merujuk ke dokumentasi shell Anda untuk perincian tentang opsi yang didukungnya.
(...)