これが難しい質問に思える場合は申し訳ありませんが、私はまだLinuxを初めて使用します。 LinuxのWindowsショートカットに相当するものはありますか(リンクではありません)
私が抱えている問題はこれです:
/home/user/appDirectory/application.exe
にあるアプリケーションがあります(Wineで実行されているWindowsアプリ)
次に、そのアプリケーションを探して実行されているかどうかを確認する監視スクリプトがあります。
例えば.
application="/home/user/appDirectory/application.exe"
if pgrep -f "$application" > /dev/null
then
is_running=1
else
is_running=0
fi
ここまでは順調ですね。しかし、誰でも簡単にアプリケーションを停止/開始できるように、デスクトップに「ショートカット」を配置する必要があります。
link
を作成して(そしてそれをデスクトップに置いて)それから開始すると、パスは/home/user/desktop/link to appDirectory/application.exe
になり、監視スクリプトはそれを見ることができません。
開いたときに元の場所として開くショートカットを作成して、アプリケーションを元の場所から開始することはできますか?
あなたのリクエストはGUIのみを対象としているようですので、.desktopファイルに関する jofel sコメントに従うことをお勧めします。 Archlinuxは、.desktopファイルの興味深いキーよりもかなり優れています 短い要約 。提案は
[Desktop Entry]
Name=Whatever you want
Type=Application
Path=/home/user
Exec=env WINEPREFIX="<prefix>" wine appDirectory/application.exe
env WINEPREFIX
partは必須ではないかもしれませんが、複数のプレフィックスがある場合、または適切な手段として使用してください。
<Whatever you want>.desktop
ファイルを$ HOME/Desktopフォルダーに配置すると、クリックできる新しいアイコンが設定されます。このファイルは、grepに少なくともappDirectory/application.exe
を提供します。 Path
は、コマンドが実行される場所です。そのため、grepに必要な場合は、Path
とExec
の比率を変更して、Exec
内のパスをより多く取得できます。したがって、Path=/
と残りをExec
に入れると、要求された動作が得られます。
ただし、このようなgrepの必要性は私にはわかりません。一度に1つのインスタンスとしてのみ実行される場合は、代わりにPIDファイルを作成し、提示された here のように、必要に応じて変更されたPIDが存在するかどうかを確認できます。 この回答 PIDファイルを選択する場合にも、興味深いことがあります。