How do I create a .url file on OS X?

23

8

I am creating a zip file and would like to include a link to a website within it so that users can double-click on the file and go straight to the website. In my research, I discovered that what I want is a .url file because it is cross-platform.

However, I can't seem to create one on a Mac. Whenever I drag a URL to my desktop, a .webloc file is created instead. This file is typically associated with Safari and isn't readable on Windows, so it won't work. Unfortunately, it's created even if I drag the URL from an alternative web browser, like Firefox.

According to this page, there is some non-trivial data within a .url file that makes it so that I can't just create one myself in a text editor without knowing what I'm doing. So how can I create a .url file on a Mac?

Thunderforge

Posted 2013-12-17T06:38:35.100

Reputation: 757

Answers

37

Add these lines in TextEdit and save as .Url

[InternetShortcut]
URL=http://www.yourfavweb.com/
IconIndex=0

Kirk

Posted 2013-12-17T06:38:35.100

Reputation: 1 063

6I don't think the IconIndex is necessary. – hectorpal – 2016-06-23T13:06:15.833

1It's up to you to give Icon for the shortcut. So why not? – Kirk – 2017-07-31T05:29:51.853

4"It's up to you implies" it's not necessary. – hectorpal – 2017-08-06T23:27:07.243

Beautiful solution. I tried with and without the index thing, and it uses the compass-looking icon, labeled URL for both. Both also worked. – VISQL – 2019-07-23T10:57:00.720

10

Following Kirk's answer, here is an small bash script for creating such files. Executing

url-create.sh superuser-site http://superuser.com/

creates a file superuser-site.url:

[InternetShortcut]
URL=http://superuser.com/

The url-create.sh shell script is the following:

#!/bin/bash
if [[ $# -le 1 || $# -ge 3 ]] ; then
    echo Usage: $0 '<namefile> <url>'
    echo
    echo Creates '<namefile>.url'.
    echo Openning '<namefile>.url' in Finder, under OSX, will open '<url>' in the default browser.
    exit 1
fi

file="$1.url"
url=$2
echo '[InternetShortcut]' > "$file"
echo -n 'URL=' >> "$file"
echo $url >> "$file"
#echo 'IconIndex=0' >> "$file"

PS: I don't think the IconIndex is necessary, so I commented it out.

hectorpal

Posted 2013-12-17T06:38:35.100

Reputation: 1 843

1

It is sufficient to put

URL=http://www.yourfavweb.com/

in the file to make it work, the [InternetShortcut] and IconIndex seem not to be necessary (any more?).

Lorenz Blum

Posted 2013-12-17T06:38:35.100

Reputation: 11