Saya mencoba membuat tautan simbolis menggunakan perintah berikut:
ln -s "~/Foo Bar/" Foo
... tetapi tidak berhasil (yaitu ketika saya pergi ke finder dan mencoba mengklik dua kali, itu mengatakan bahwa itu menunjuk ke jalur yang tidak valid dan meminta saya untuk menghapus alias atau memperbaikinya). Saya harus mengganti nama folder FooBar
dan kemudian menjalankan perintah berikut:
ln -s ~/FooBar/ Foo
Bagaimana saya bisa membuat tautan tanpa harus menghapus ruang dari nama folder?
Saya mencari cara untuk melakukan ini di Terminal dan bukan di UI Finder's.
ln -s
membuat symlink. Finder membuat alias. Mereka hampir identik dalam penggunaan praktis dan umum, tetapi penting untuk mengenali bahwa mereka berbeda . Symlink menunjuk ke jalur direktori, sedangkan alias menunjuk ke file. Jika Anda berdua menunjuk ke file yang sama dan Anda memindahkan file ke folder yang berbeda, lalu membuat file baru di folder lama, alias akan menunjuk ke dokumen asli yang dipindahkan dan symlink akan menunjuk ke file baru.ln -s ~/Foo<tab>
(di mana <tab> menunjukkan tombol ⇥ (tab) yang sebenarnya pada keyboard Anda), jika hanya ada satu folder yang dimulai dengan "Foo" di dalam~
maka itu akan secara otomatis perluas jalur ke~/Foo\ Bar/
.Jawaban:
Tanda kutip mencegah
~
diperluas ke folder rumah Anda, jadi Anda perlu mengutip bagian dengan ruang di dalamnya:Catatan: tepat berapa banyak yang dikutip tidak masalah, asalkan spasi ada di bagian yang dikutip dan ~ / tidak.
~/Foo" "Bar/
,~/"Foo Bar"/
,~/Fo"o B"ar/
Dll semua setara. Juga, tanda kutip tunggal dan ganda memiliki efek yang sama pada spasi (meskipun mereka berbeda pada karakter lain), jadi~/'Foo Bar/'
,~/Foo' 'Bar/
dll juga akan berfungsi.Anda juga bisa menggunakan pelarian untuk mencegah ruang diperlakukan sebagai pemisah:
sumber
"$HOME/Foo Bar/"
.~
,$HOME
harus dalam tanda kutip ganda untuk mencegah kebingungan jika direktori home Anda berisi spasi atau karakter aneh lainnya."$HOME/Foo Bar/"
(seperti yang Anda sarankan),"$HOME"/Foo" "Bar/
,"$HOME"/Foo\ Bar/
, dll akan bekerja.Saya mengujinya sendiri. Saya tidak punya masalah dengan ruang di dalamnya:
Ini menunjukkan:
$ linkToFoo_Bar -> /Users/joe/test/foo bar/
dan berfungsi di terminal dan finder tanpa masalah.sumber
~
helper.