この質問は一般的すぎるように聞こえますが、答えを見つけることができません。
リンク(ソフト/ハード)ファイルを作成するにはどうすればよいですか?開いたときに、http
プロトコルを使用してWebサイトにリダイレクトしますか?
私が考えることができる1つの考えられる方法は、lameシェルスクリプトを作成し、ブラウザを使用してWebサイトを開くことができる実行可能スクリプトにすることです。しかし、「ハイパーリンクファイル」という概念はありませんか?
これをtarget.html
に追加します。
<html>
<head>
<meta http-equiv="refresh" content="0; url=http://example.com/" />
</head>
</html>
firefox target.html
を実行すると、example.comが開きます。
明確にするために、「ハイパーリンクファイル」のようなものはありません。シンボリック および ハード リンクですが、これらは単にディスク上のファイルを参照する方法であり、URLではありません。 man ln
から:
シンボリックリンクは任意のテキストを保持できます。後で解決される場合、相対リンクはその親ディレクトリに関連して解釈されます。
xdbg-open
は何でも開くためのデフォルトのアプリケーションなので、次のようなbashスクリプトを作成できます。
#!/bin/bash
if which xdg-open > /dev/null
then
xdg-open YOUR_URL
Elif which gnome-open > /dev/null
then
gnome-open YOUR_URL
fi
それに応じてYOUR_URLを置き換え、ファイルを保存して実行可能にします(chmod +x filename.sh
)
.desktop
ファイルがあります:
$ cat ~/Desktop/Link.desktop
[Desktop Entry]
Encoding=UTF-8
Name=Link to your site
URL=http://your-site-url.com
Icon=text-html
これは、ソリューションがコマンドラインベースである必要はないが、多くの快適さを得ることになっている場合に考えられる答えです。
もちろん、.desktop
ファイルを~/Desktop/
に保存する必要はありません。彼らはほとんどその場所で使用される可能性があるため、私はこの場所を使用しました。
まだ出ていない答えの1つは、Linuxのbinfmt_misc
機能を使用して、カーネルレベルで機能するネイティブ実行可能リンク形式を作成することです。
.link
内のxdg-open
ファイルを自動的に開くには、これを/etc/local.d/binfmt_misc.start
の実行可能ファイル、またはOSが起動時に実行するファイル内に配置します。
#! /bin/sh
echo ':open-hyperlink:E::link::/usr/local/bin/open-hyperlink:' > /proc/sys/fs/binfmt_misc/register
そして、以下を/usr/local/bin/open-hyperlink
実行可能ファイルに入れます。
#! /bin/sh
xdg-open "`cat "$1"`"
その後、実行可能としてマークされた.link
ファイルを任意の方法で「実行」するだけで、ブラウザにリンクが開きます。コマンドライン、GUIダブルクリック、好きなもの。
$ echo 'http://superuser.com/questions/986527/how-to-create-a-hyperlink-file' > this-page.link
$ chmod +x this-page.link
$ ./this-page.link
[Browser opens…]
もちろん、open-hyperlink
スクリプトを適宜変更すれば、拡張子とファイル形式を好きなように変更できます。 Windows .lnk
ファイルですら!
もちろん、カーネルが機能するには、そのモジュールが利用可能で有効になっている必要があります。 (私はそれをコンパイルしました。)
binfmt_misc
のドキュメントを確認してください。たとえば、さらに多くの可能性があります。ファイル拡張子の代わりにパターンを照合します。
これをプログラムで実行したい場合は、多くの回答がありますが、そうでない場合は、ブラウザでページを開き、アドレスバーからデスクトップまたはファイルエクスプローラウィンドウにドラッグすると、リンクが作成されます。