Ingin berbagi, mungkin jawaban yang lebih menyeluruh untuk pertanyaan ini: Bagaimana menerjemahkan antara lokasi file gaya Windows dan Mac?
Tapi karena saya baru dan tidak mendapat kredit di situs ini, saya memposting sebagai pertanyaan baru - maaf tentang itu ... hanya ingin memberi kembali karena jawaban di atas sangat membantu, tetapi masih memerlukan beberapa peretasan yang ingin saya simpan yang lain merepotkan.
MASALAH
Dari Mac, saya ingin menyalin jalur file di jaringan berbagi ke email sehingga dapat diklik oleh penerima Windows yang miskin. Saat ini, saya salin / tempel path, misalnya: smb: //servername/MLS/Timbers/IrrefutableProofTimbersAreBestTeamInMLS.pdf
menjadi email, lalu secara manual mengonversinya ke jalur Windows: \\ servername \ MLS \ Timbers \ IrrefutableProofTimbersAreBestTeamInMLS.pdf
Tetapi itu adalah hal yang bodoh untuk dilakukan berulang kali, jadi saya menemukan beberapa contoh online (forum ini dan yang lainnya) dan meretasnya sampai saya membuatnya bekerja beberapa cara (lihat di bawah).
Masalah terkait adalah ketika pengguna Windows mengirim saya jalur file dan saya ingin cepat mengaksesnya. Saat ini, saya menavigasi secara manual dengan menerjemahkan jalan di kepala kecil saya, yang menyakitkan. Jadi, saya membalikkan retasan di atas dan menambahkan panggilan untuk membuka folder ke file.
LARUTAN
Di Mac OS Automator saya membuat tiga skrip Apple yang dijalankan sebagai layanan. Ini memungkinkan saya untuk memilih jalur, klik kanan dan pilih layanan yang sesuai dari menu "Layanan ...", yang saya beri nama:
- “Konversikan jalur Windows ke Mac dan buka”
- “Konversi jalur Windows ke Mac”
- “Konversi jalur Mac ke Windows”
RINCIAN
**Script: “Convert Windows to Mac path and open it”**
on searchReplace(theText, SearchString, ReplaceString)
set OldDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to SearchString
set newText to text items of theText
set AppleScript's text item delimiters to ReplaceString
set newText to newText as text
set AppleScript's text item delimiters to OldDelims
return newText
end searchReplace
on run {input, parameters}
set myClip to the input
set mytext to searchReplace(myClip, "<", "")
set mytext to searchReplace(mytext, ">.", "")
set mytext to searchReplace(mytext, ">", "")
set findIt to "\\"
set replaceIt to "/"
set mylocation to searchReplace(mytext, findIt, replaceIt)
set mylocation to "smb:" & mylocation
tell application "Finder"
open location mylocation
end tell
return input
end run
-- Thanks to: https://apple.stackexchange.com/questions/144916/how-to-change-filepath-structure-using-automator-windows-to-mac --
**Script: “Convert Windows to Mac path”**
on searchReplace(theText, SearchString, ReplaceString)
set OldDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to SearchString
set newText to text items of theText
set AppleScript's text item delimiters to ReplaceString
set newText to newText as text
set AppleScript's text item delimiters to OldDelims
return newText
end searchReplace
on run {input, parameters}
set myClip to the input
set mytext to searchReplace(myClip, "<", "")
set mytext to searchReplace(mytext, ">.", "")
set mytext to searchReplace(mytext, ">", "")
set findIt to "\\"
set replaceIt to "/"
set mylocation to searchReplace(mytext, findIt, replaceIt)
set mylocation to "smb:" & mylocation
return mylocation
end run
**Script: “Convert Mac to Windows path”**
on searchReplace(theText, SearchString, ReplaceString)
set OldDelims to AppleScript's text item delimiters
set AppleScript's text item delimiters to SearchString
set newText to text items of theText
set AppleScript's text item delimiters to ReplaceString
set newText to newText as text
set AppleScript's text item delimiters to OldDelims
return newText
end searchReplace
on run {input, parameters}
set myClip to the input
set mytext to searchReplace(myClip, "<", "")
set mytext to searchReplace(mytext, ">.", "")
set mytext to searchReplace(mytext, ">", "")
set mytext to searchReplace(mytext, "smb://", "\\\\")
set findIt to "/"
set replaceIt to "\\"
set mylocation to searchReplace(mytext, findIt, replaceIt)
return mylocation
end run
Tangkapan layar dari skrip terakhir:
sumber