4

私は単純なシェルスクリプトを持っています:

#!/bin/zsh

URL=$1

function findBrowser {
    processName=$1
    ps ax | grep "$processName" | grep -v grep | wc -l
}

CNTFF=`findBrowser "firefox"`
CNTCH=`findBrowser "chromium"`

echo "$*" > $HOME/logurls

if [ $CNTFF -ge 1 ] 
then
    /usr/bin/firefox "$URL"
elif [ $CNTCH -ge 1 ] 
then
    /usr/bin/chromium "$URL"
else
    echo "No running browser instance"
fi

URL を引数としてコマンド ラインから呼び出された場合、すべてが正常に機能します。しかし、urxvt の構成でスクリプトを指定すると、URL は渡されません (ログ URL をチェックしています)。

urxvt の構成は次のとおりです。

URxvt.perl-ext-common:  default,matcher,clipboard
URxvt.matcher.button:   1
URxvt.urlLauncher:      $HOME/bin/openurl

最も奇妙なことは、urlLauncher を /usr/bin/firefox に変更すると、何らかの形で URL が開くことです。そのため、URL は Firefox に渡されているようですが、スクリプトには渡されていません。

それをデバッグする方法は何ですか?または、urxv について何か不足していますか?

$HOME/bin / openurlの代わりに/home/user/bin/openurlを指定するとうまくいきます

4

0 に答える 0