Для офиса, в котором в основном работают рабочие станции Windows и несколько рабочих станций OS X, какой самый простой способ для пользователей Mac преобразовать пути к файлам в стиле Windows и обратно?
Например, для автоматического перевода \\fileserver01\client-files\client01\comp.psd
, если оно отправлено по электронной почте, на //fileserver01/client-files/client01/comp.psd
?
На этом сайте есть способ перевести в сетевое местоположение Mac и открыть его: http://hints.macworld.com/article.php?story=20040322155331393
Таким образом, вы можете легко сохранить это как текстовую службу и иметь возможность выбрать сетевое расположение Windows, щелкнуть его правой кнопкой мыши, перевести и открыть.
Я предполагаю, что вы могли бы как бы отменить функцию и перевести обратно в строку сетевого местоположения Windows.
Вот как настроить текстовую службу/быстрое действие для преобразования в путь Mac и открыть его в Finder:
Вот как должен выглядеть ваш сервис Automator:
Я также сначала использовал applescript для преобразования ссылок Windows/macos, но затем я нашел приложение LinkConverter для MacOS , которое делает эту работу за меня.
Вы будете получать уведомления о каждой ссылке, найденной в вашем буфере обмена. В зависимости от настроек приложения ссылка будет преобразована:
Это работает и для файлов, и для папок.
Я знаю, что это старый обмен, но он все еще работает. Я разветвил код, чтобы показать пример преобразования пути сетевого диска в протокол SMB с IP-адресом сервера.
Это полезно, если у пользователей Windows есть буквенный сетевой диск, такой как W:\a\really\tedious\folder\path
https://gist.github.com/jberg412/036484376a56f09e1a4a
Спасибо за оригинальный скрипт PenguinRob.
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 mylocation to searchReplace(myClip, "<", "")
set mylocation to searchReplace(mylocation, ">.", "")
set mylocation to searchReplace(mylocation, ">", "")
set mylocation to searchReplace(mylocation, "\\", "/")
set mylocation to "smb:" & mylocation
# convert Windows network drive paths to SMB addresses EXAMPLE:
set mylocation to searchReplace(mylocation, "smb:W:", "smb://10.0.0.1/shares")
# check if the person who gave you the windows link used a lowercase drive letter:
set mylocation to searchReplace(mylocation, "smb:w:", "smb://10.0.0.1/shares")
# fix issue with spaces
set mylocation to searchReplace(mylocation, " ", "%20")
tell application "Finder"
open location mylocation
end tell
# after setting the location, set Finder to topmost, or delete this section if you dont want that.
tell application "Finder"
activate
end tell
return input
end run
Мартин Мюллер