Saya telah mencoba tiga cara berbeda untuk membuat tautan simbolis ke Teks Luhur di Mac saya dan, setelah memulai ulang terminal setiap kali, masih terus memberi tahu saya perintah tidak ditemukan. Saya menggunakan Mac dengan Yosemite (OSX Yosemite, 10.10). Bagaimana saya bisa membuat tautan simbolis sehingga saya bisa membuka Sublim dengan sub
perintah?
Satu
ln -s 'Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl' /bin/sub
Dua
ln -s "Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl" /bin/sub
Tiga (tidak ada kutipan)
ln -s Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /bin/sub
/Applications/…
, seperti yang ditunjukkan dalam jawaban, dan Anda perlu root privilege untuk menulis/bin
(karenanyasudo
). Pertanyaan residual adalah apakah itu cukup untuk menjalankan executable seperti itu. Apakah Anda yakin tidak ingin skrip shell yang melakukan sesuatu sepertiopen "/Applications/Sublime\ Text.app"
isi file/bin
?Jawaban:
Anda melewatkan '/' di awal aplikasi Anda dan
sudo
seperti/bin
yang dimiliki olehroot
dan Anda tidak dapat benar-benar menulisnya sebagai pengguna normal. Seperti yang Anda miliki saat ini, itu hanya akan berfungsi jika direktori Anda saat ini adalah root sistem. Tentu saja ini mengasumsikan bahwa aplikasi Teks Sublime ada di folder Aplikasi utama Anda.Coba ini…
Satu renungan: Itu dianggap praktik buruk untuk mengubah konten
/bin
dan/usr/bin
karena setiap upgrade OS X mendatang dapat menghapus konten di sana./usr/local/bin
adalah tempat biasa untuk menginstal binari yang disediakan pengguna, jadimungkin opsi yang lebih baik.
Atau (karena Anda mungkin tidak perlu menjalankan Sublime Text dari dalam skrip shell), cukup tentukan alias bash
yang harus ditambahkan ke file startup bash Anda untuk membuatnya tetap
sumber
sudo
dan jika Anda akan mengutip pathname maka jangan gunakan garis miring terbalik untuk keluar dari spasi!Terlambat ke pesta. Saya mengalami masalah yang sama ketika mengatur Mac saya dan mencoba beberapa hal. Inilah yang bekerja untuk saya.
Untuk informasi lebih lanjut, buka repo github ini .
sumber
sudo
dan itu diperlukan dalam kasus ini, bagaimana ini berbeda maka apa yang sudah ditawarkan dalam jawaban mockman? Selain fakta bahwa ia memilih untuk menggunakansub
vs.subl
, sehingga untuk mengetik satu karakter yang kurang berulang untuk menggunakannya, itu benar-benar bukan dari apa yang bisa saya lihat!/usr/local/bin
tidak menggunakan/usr/bin
sebagai perintah di atas./usr/local/bin
adalah direktori rekomendasi untuk aplikasi pengguna sedangkan / usr / bin digunakan untuk program pengguna yang dikelola distribusi. Jadi,sub
vssubl
adalah tidak satu-satunya perubahan, itu hanya tergantung pada preferensi pengguna; apa yang ingin mereka tulis. Saya minta maaf jika itu menyebabkan kebingungan ..ln: /usr/local/bin/subl: Permission denied
2. Saya sarankan Anda membaca kembali jawaban mockman karena benar-benar ada/usr/local/bin/
disudo ln -s
perintah kedua dalam jawabannya!