Saya memiliki direktori di hard drive saya yang berisi koleksi file yang dapat dieksekusi Unix yang saya coba jalankan dari terminal. Ketika saya menelusuri direktori dari terminal itu menunjukkan semua file ada tetapi ketika saya memasukkan nama salah satu executable Unix ia mengatakan '-bash orca: command not found' (executable disebut 'orca'). Jika saya menjelajah ke folder di finder dan mengklik file yang sama, jendela terminal muncul dan menjalankan file. Namun, karena program mengharuskan saya menentukan file input, saya mendapatkan yang berikut dikembalikan:
/Users/damonrobles/Documents/orca_macosx_r2360/orca ; exit;
Damon-Robless-MacBook-Pro:~ damonrobles$ /Users/damonrobles/Documents/orca_macosx_r2360/orca ; exit;
This program requires the name of a parameterfile as argument
For example ORCA TEST.INP
logout
[Process completed]
Menurut manual program, saya harus memanggil program dari terminal sebagai berikut:
nohup orca Inputfile.inp >& outputfile.out
tetapi ketika saya melakukan ini hanya menghasilkan file output yang mengatakan:
nohup: orca: No such file or directory
dan mengembalikan saya ke terminal prompt. Saya tidak tahu apa masalahnya, meskipun saya pengguna terminal pemula jadi saya yakin itu adalah sesuatu yang bodoh di pihak saya. Setiap bantuan sangat dihargai! Saya menggunakan MacBook Pro, menjalankan OSX 10.6.8.
.
untuk$PATH
, yang bisa dilakukan tapi itu risiko keamanan; itu membuat lebih mudah bagi orang untuk membodohi Anda dalam menjalankan program jahat mereka alih-alih yang standar. Jadi jangan.sl
biner yang disiapkan dengan baik di homedir Anda, Anda tidak pernah tahu siapa yang mungkin menjalankannya suatu hari ...Hanya untuk memperluas pada jawaban @jtbandes: Anda dapat (1) menavigasi ke direktori yang berisi
orca
(seperti yang Anda katakan) dan melakukan apa yang dia katakan, Anda dapat (2) menggunakan path lengkap ke executable seperti / Users / Damon / foo / bar / orca (atau ke file input untuk masalah ini), atau Anda dapat "menautkan" executable ke direktori yang ada di $ PATH Anda. Misalnya, jikaorca
ada di Desktop, Anda dapat melakukan:Untuk menjadikan ini permanen, Anda akan mengubahnya
.bash_profile
di direktori home Anda.sumber
Salah satu opsi adalah menambahkan
ke variabel lingkungan PATH Anda, jika Anda akan meninggalkan kode yang terinstal di direktori Documents Anda.
Opsi lain yang dapat Anda pertimbangkan adalah menambahkan '
.
' ke PATH Anda.Meskipun bisa berbahaya (untuk menambahkan '
.
' ke PATH), saya bekerja di lingkungan yang cukup bersih yang saya miliki '.
' di depan PATH saya. Itu lebih berbahaya daripada memilikinya di belakang PATH, dan keduanya lebih berbahaya daripada tidak memiliki '.
' pada PATH Anda.Keuntungan memiliki '
.
' di depan adalah saat mengembangkan program, saya tidak harus menentukan./program
untuk menjalankan salinan lokal alih-alih salinan yang diinstal. Kerugian memiliki '.
' di bagian depan adalah bahwa jika seseorang masuk ke mesin saya dan menciptakan Trojan Horse yang disebut 'ls
' (katakanlah) di salah satu direktori saya dan saya jalankan 'ls
' di direktori itu, saya menjalankan Trojan Horse mereka alih-alih versi nyata. Jika mereka punya akal, Trojan akan membersihkan sendiri dan menjalankan perintah yang dimaksudkan, yang berarti saya mungkin tidak memperhatikan. Terserah Anda apakah Anda menganggap itu risiko serius atau tidak. Menambahkan '.
'di akhir PATH berarti Anda akan menjalankan program di direktori saat ini yang tidak memiliki analog di mana pun di PATH Anda; namun, jika Anda memiliki versi program yang terinstal di, katakanlah,/usr/local/bin
(dan itu ada di PATH Anda), maka versi yang diinstal akan dijalankan sesuai preferensi ke versi lokal. Itu mungkin atau mungkin tidak masalah bagi Anda; itu bagi saya jadi saya menempatkan '.
' di depan, tetapi itu adalah risiko yang dipertimbangkan dan dipahami.YMMV; berhati-hatilah.
sumber