Cara menyalin jalur file Unix di OS X Yosemite

48

Ketika saya mencoba untuk mendapatkan path dari file menggunakan ⌘ (Command)+ I, itu memberikan path dengan cara yang berbeda.

Saya melihat ini hanya setelah memperbarui ke Yosemite. Ini bukan teks. Bagaimana saya mendapatkannya dalam format /Users/Myself/Documents/…?

MaDu_LK
sumber

Jawaban:

44

Cukup pilih file itu sendiri di Finder dan tekan CmdCatau pergi ke Edit »Salin . Anda kemudian dapat menempel jalur secara langsung ke jendela terminal.

Perhatikan bahwa ini akan lolos dari karakter khusus.

Jika Anda ingin jalur dalam bentuk yang dapat dibaca manusia, Anda perlu melakukan hal berikut:

  • Buka Utilities / Automator.app
  • Buat Layanan baru
  • Setel untuk tidak menerima input dari Finder.app
  • Seret Jalankan AppleScript dari panel kiri ke kanan
  • Rekatkan yang berikut ke dalam bidang:

    tell application "Finder"
        set sel to the selection as text
        set the clipboard to POSIX path of sel
    end tell
    
  • Seharusnya terlihat seperti ini:

  • Simpan layanan dengan nama apa pun yang Anda suka, misalnya Salin jalur yang dapat dibaca manusia .

Ini bagian satu. Sekarang, tetapkan pintasan keyboard:

  • Buka  »Preferensi Sistem» Keyboard »Pintasan
  • Buka bagian Layanan dan gulir ke bawah
  • Tetapkan pintasan keyboard untuk layanan Anda

Juga, sekarang tekan shorcut itu ketika Anda membutuhkan jalur dari setiap item Finder yang dipilih.

slhck
sumber
8
terima kasih kawan Saya pikir itu tidak dapat diterima (terutama oleh apel) bahwa seseorang seperti saya harus membuang waktu untuk mencari cara untuk menyalin path file pada tahun 2014 !!!
Apperside
Ini sangat membantu! Namun bagaimana cara membuatnya muncul dalam daftar cara pintas saya karena tidak ada di sana. (menyimpannya sebagai layanan). Apakah harus di lokasi tertentu?
v3nt
1
@danielCrabbe Ini harus disimpan ~/Library/Services, saya pikir. FastScripts dapat membantu Anda jika preferensi pintasan default tidak berfungsi.
slhck
1
Saya berharap ini berfungsi untuk menempel ke Finder's Go to Folder…( command-shift-g).
jtheletter
1
Saya membuat alur kerja Automator yang lebih baik, yang menerima input dari Finder dan karenanya akan tersedia / tidak tersedia tergantung pada apa yang Anda lakukan di Finder: dl.dropboxusercontent.com/u/147461/screenshots/…
Abhi Beckert
13

Buka "Terminal" Applications > Utilities > Terminaldan seret file ke jendela. Path lengkap Unix file akan muncul.

JakeGould
sumber
4
Saya sudah menyebutkan itu dalam jawaban saya. Masalahnya adalah bahwa OP tidak ingin jalan keluar, saya kira.
slhck
1
@slhck Ehhh. Baik. Tapi sekarang ini alasan lain untuk menunda peningkatan ke Yosemite. Begitu banyak masalah besar & kecil untuk siapa saja yang melakukan pekerjaan produksi.
JakeGould
2
Ya, ini sedikit merepotkan. Saya tidak menggunakan Mac ini untuk "produksi" lagi, tetapi saya terus menemukan perubahan kecil yang membuatnya merasa seperti saya seharusnya bertahan dengan 10,9 untuk sedikit lebih lama.
slhck
3

Klik kanan (atau kontrol-klik) pada ikon file, lalu tahan tombol opsi. Di menu pop-up yang muncul akan ada item menu "Salin " nama file " sebagai Pathname". Item menu itu akan menempatkan jalur POSIX ke item di clipboard.

ThomasW
sumber
1
Menurut osxdaily.com/2015/11/05/... Ini menjadi tersedia dengan versi OS X 10.11
TecBrat
@ TekBrat Ya, ini mungkin bukan di Yosemite, tetapi sekarang tersedia.
ThomasW
1

Seret file ke textEdit untuk mendapatkan path.

Menyeret file ke Terminal akan mengganti spasi atau karakter khusus dalam nama file dengan garis miring terbalik.

Cool Brian
sumber
Bisakah Anda menjelaskan apa yang Anda maksud dengan "garis miring ke depan acak"? Ketika Anda menyeret file ke jendela Terminal, dan file memiliki spasi di dalamnya (atau karakter khusus lainnya), mereka akan lolos untuk shell dengan garis miring terbalik, mis. foo barAkan dikonversi menjadi foo\ bar.
slhck
-1

Arahkan ke file. Salin file (Cmd + C). Buka TextEdit atau Notes. Rekatkan (Cmd + V).

Sihir!

DanielZ_UK
sumber
6
Ini tidak menyalin path, tetapi hanya nama file. Aplikasi yang Anda tempel untuk mengimplementasikan perilaku ini, dan hanya Terminal yang tampaknya menempelkan path lengkap (lolos meskipun).
slhck