私の主なOSはOS Xですが、使用しているLinux Mintシステムがあり、両方のシステムで同じことをしたいという同じような状況に陥ります。直接サポートされていない場合は、別の方法を見つける必要があります。このような場合、.desktop
ファイルに関する他の質問のように、ファイル用のブラウザ拡張機能がなかった場合.url
、ここで私がやることがあります。
.desktop
ファイルを.webloc
ファイルまたは.url
ファイルに変換し、既定のアプリ設定ペインであるRDefaultcodeのRCDefaultAppを使用して、特定のファイル拡張子を開くアプリケーションを変更します。
これは、数年前に書いた同様のスクリプトから修正したbashスクリプトです。このスクリプトは、URLを含むファイルからファイルを作成します。.webloc
.url
.desktop
- ターミナルで
cd
、.desktop
ファイルを含むディレクトリに移動します。
以下のコマンドを発行します。
touch d2wu
open d2wu
以下のコードをコピーして、開いているd2wu
ファイルに貼り付けます。
#!/bin/bash
clear
echo
echo " Create .webloc/.url files from .desktop files."
echo " ----------------------------------------------"
echo " Choose File Type(s):"
echo
echo " [1] Create .webloc & .url files."
echo " [2] Create only .webloc files."
echo " [3] Create only .url files."
echo " [Q] Quit."
echo
echo " Press 1 to 3 or Q then press Enter..."
Create_WEBLOC () {
for f in *.desktop; do
if [[ ! -f ${f%.*}.webloc ]]; then
url="$(awk -F '=' '/^URL=/{print $2}' "$f")"
if [[ ! -z $url ]]; then
cat <<EOF >"${f%.*}.webloc"
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>URL</key>
<string>$url</string>
</dict>
</plist>
EOF
else
echo " No URL found in $f file."
fi
fi
done
}
Create_URL () {
for f in *.desktop; do
if [[ ! -f ${f%.*}.url ]]; then
url="$(grep -e '^URL=' "$f")"
if [[ ! -z $url ]]; then
printf "[InternetShortcut]\n${url}\n" > "${f%.*}.url"
else
echo " No URL found in $f file."
fi
fi
done
}
read keypress
echo
case "$keypress" in
"1")
echo " Creating .webloc & .url files."
Create_WEBLOC
Create_URL
;;
"2")
echo " Creating .webloc files."
Create_WEBLOC
;;
"3")
echo " Creating .url files."
Create_URL
;;
"q" | "Q")
echo " No files were created."
;;
*)
echo " Pressing \"$keypress\" is not a valid choice... Try again!"
echo
read -p " Press Enter to continue..."
"$0" # Run the Script again.
;;
esac
echo
d2wu
ファイルを保存して閉じます。
作成しd2wu
、実行:
chmod u+x d2wu
実行d2wu
:
./d2wu
スクリプト出力の例:
Create .webloc/.url files from .desktop files.
----------------------------------------------
Choose File Type(s):
[1] Create .webloc & .url files.
[2] Create only .webloc files.
[3] Create only .url files.
[Q] Quit.
Press 1 to 3 or Q then press Enter...
[]
注:デフォルトのアプリケーション設定ペインであるRDefaultcodeのRCDefaultAppを使用して、特定のファイル拡張子を開くアプリケーションを変更できます。
また、ファイルタイプ、アプリ、URL、UTIなどの他のデフォルトメソッドを変更する必要がある場合は、デフォルトアプリ設定ペインが最適なユーティリティです。
注:コーディングされているように、1、2、または3を選択しても.webloc
、既存のファイルやファイルを上書きしません.url
。「...ファイルを作成しています」と報告されます。これは、既存のファイルをステップ.desktop
実行せず、画面への出力を最小限に抑えながらURL=...
、.desktop
ファイルの種類によっては行を含まないファイルのみを出力するために行われました。