.desktop 파일에서 URL 문자열을 따옴표로 묶어 전달하는 방법

.desktop 파일에서 URL 문자열을 따옴표로 묶어 전달하는 방법

Wine을 통해 WhatsApp Desktop을 설치하고 whatsapp://링크를 연결해 보았습니다.

전화번호로 채팅을 시작하려면 명령줄에서 다음 명령을 실행하세요 +1234567890.

env WINEPREFIX="/home/mike/WhatsAppDesktopWine" wine C:\\users\\mike\\AppData\\Roaming\\Microsoft\\Windows\\Start\ Menu\\Programs\\WhatsApp\\WhatsApp.lnk "whatsapp://send/?phone=%2B1234567890&text&type=phone_number&app_absent=0"

내 파일을 편집 ~.config/mimeapps.list하고 다음을 추가했습니다.

x-scheme-handler/whatsapp=~/.local/share/applications/wine/Programs/WhatsApp/WhatsApp.desktop

WhatsApp.desktop에는 다음 줄이 포함되어 있습니다.

Exec=env WINEPREFIX="/home/mike/WhatsAppDesktopWine" wine C:\\\\users\\\\mike\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start\\ Menu\\\\Programs\\\\WhatsApp\\\\WhatsApp.lnk

그런 다음 "%u"끝에 추가하여 전체 줄이 다음과 같습니다.

Exec=env WINEPREFIX="/home/mike/WhatsAppDesktopWine" wine C:\\\\users\\\\mike\\\\AppData\\\\Roaming\\\\Microsoft\\\\Windows\\\\Start\\ Menu\\\\Programs\\\\WhatsApp\\\\WhatsApp.lnk "%u"

그러나 명령에 URL을 전달하지 않습니다.

답변1

마지막 Exec~해야 한다작동하지만 xdg-open파일의 내용을 캐시 하는 것으로 나타났습니다 .desktop. 캐시가 얼마나 오래 지속되는지는 잘 모르겠지만 다음과 같이 하면 캐시가 지워지는 것 같습니다.

먼저 .desktop 항목을 임시 위치에 복사합니다.

cp -a ./.local/share/applications/wine/Programs/WhatsApp/WhatsApp.desktop ./.local/share/applications/wine/Programs/WhatsApp/WhatsApp2.desktop

그런 다음 mimeapps.list에서 항목을 복사된 위치로 변경합니다.

x-scheme-handler/whatsapp=~/.local/share/applications/wine/Programs/WhatsApp/WhatsApp2.desktop

그런 다음 다음을 실행합니다.

xdg-open "whatsapp://send/?phone=%2B1234567890&text&type=phone_number&app_absent=0"

마지막으로 변경 사항을 되돌리고 복사된 파일을 삭제할 수 있습니다.

관련 정보