Saya baru di Unix dan dalam proses menginstal program untuk disertasi saya, saya harus bermain dengan PATH untuk perintah dasar Unix seperti ls
. Setiap kali saya mengetik ls
dan nama direktori yang ingin saya daftarkan file-file itu, muncul sebagai:
-bash: ls: No such file or directory
Apa yang bisa saya lakukan untuk memperbaikinya? Setiap bantuan sangat dihargai!
bash
command-line
ls
path
Mariaa
sumber
sumber
Jawaban:
Setel ulang jalur Anda sekarang (yaitu sebelum segala jenis logout) dengan:
Itu tidak mendapatkan PATH lengkap Anda dikembalikan tetapi utilitas dasar akan tersedia lagi.
Berikut ini contoh hal yang terjadi:
Anda memiliki variabel PATH (disebut $ PATH saat membaca darinya)
Sesuatu seperti:
Anda mencoba menambahkannya, tetapi Anda tidak sengaja menggunakannya
dari pada
dan hasilnya adalah jalanmu menjadi
dan kemudian semua utilitas seperti ls dan sed tidak berfungsi
Anda dapat memperbaiki set minimal dengan melakukan
yang sangat berguna jika file titik login mengacaukan PATH
Anda. Periksa file .bashrc dan / atau .bash_profile Anda untuk mengetahui perubahan PATH.
Seperti kata Greg, Anda juga bisa keluar (atau opsi yang lebih aman, buka jendela baru jika membuka jendela baru rusak!) Dan kemudian gema $ PATH dari jendela baru.
Hal yang sama terjadi ketika Anda melakukannya
path=
tanpa nilai. Ini 'menghapus' jalur Anda saat ini dan menyebabkan masalah ini. Teks yang kuatAdapun alasannya , ketika Anda memiliki masalah ini, cd berfungsi dan ls tidak berfungsi:
cd
adalah perintah "bawaan" yang tidak memerlukan PATH Anda untuk menemukan programls
adalah program dan perlu menggunakan PATH untuk menemukan di mana itu.Anda dapat melihat ini dengan:
Tidak ada kesalahan berarti perintah itu adalah builtin
Sebelum 'melanjutkan' (atau keluar) ...
Pastikan untuk menguji setiap perubahan ( terutama yang ke .bashrc, .profile, dll yang melakukan perintah pengaturan PATH) dengan membuka jendela baru atau melakukan source ~ / .bash_profile untuk menjalankannya. Ini juga merupakan praktik yang baik untuk menjaga jendela dan editor (ketika Anda mengubah file .bash_profile) terbuka jika perubahan Anda tidak berfungsi dan mencegah Anda membuka jendela baru untuk mengedit file. Meskipun Anda masih dapat menggunakan TextEdit atau editor sederhana lainnya untuk mengubah file (menghindari baris perintah dan vi misalnya). Berhati-hatilah untuk TIDAK me-reboot jika / ketika shell Anda rusak atau Anda bahkan mungkin tidak bisa login. dan itu benar-benar buruk (tanpa akun lain
su
dari Anda disemprot). Telah terjadi pada saya!Perbaikan 'akun ekstra' saya juga merupakan penyelamat hidup dan sangat dianjurkan untuk semua (lakukan sekarang!)
sumber
source ~/.bash_profile
untuk menjalankannya. Ini juga merupakan praktik yang baik untuk menjaga jendela dan editor (di mana Anda mengubah file .bash_profile) terbuka jika Anda berubah tidak berfungsi dan mencegah Anda membuka jendela baru untuk mengedit file. Meskipun Anda masih dapat menggunakan TextEdit atau editor sederhana lainnya untuk mengubah file.Perubahan yang Anda buat
PATH
kemungkinan bersifat sementara. Tutup cangkang tempat Anda beradaexit
dan buka kembali.Jika Anda telah mengedit file yang menetapkan
PATH
shell yang baru dibuka, tentukan path lengkap ke perintah untuk memperbaiki apa pun yang telah Anda ubah (mis./usr/bin/vim
).sumber
/usr/bin
adabin
direktori di jalur Anda? @Mariaa