デスクトップエントリから結合されたhexoコマンドを実行する


0

Debian 9.5にはxfceとhexoが含まれています:3.7.1

問題は、「ドラフト」と呼ばれる私のスクリプトを調整することです。

s@lokal:~$ sudo cat /usr/local/bin/draft
#!/bin/bash
killall hexo
cd /home/s/Dropbox/blog
hexo clean

pwd
whoami

hexo g --draft
hexo server --draft  &
sleep 5
firefox 'http://localhost:4000/'
s@lokal:~$ 

私が理解しようとしているのは、デスクトップエントリからhexo複合コマンドを実行することです。デスクトップファイルはこちら

s@lokal:~$ cat ~/Desktop/blog.desktop; ls -l ~/Desktop/blog.desktop 
[Desktop Entry]
Version=1.0
Type=Application
Name=blog
Comment=
Exec=/usr/local/bin/draft
Icon=accessories-text-editor
Path=/home/s/Dropbox/blog/
Terminal=true
StartupNotify=true
-rwxr-xr-x 1 s s 179 Sep 21 18:16 /home/s/Desktop/blog.desktop

メッセージを見るために、ターミナルキーをtrueにしました。私はデスクトップエントリをクリックした後にこれを取得しています:

hexo: no process found
/usr/local/bin/draft: line 4: hexo: command not found
/home/s/Dropbox/blog
s
/usr/local/bin/draft: line 9: hexo: command not found
/usr/local/bin/draft: line 10: hexo: command not found

メッセージの重要な部分は、hexoコマンドが見つからなかったことです。execキーに接続されているのと同じコマンドを実行すると、コマンドが実際に見つかります。

s@lokal:~$ /usr/local/bin/draft
hexo: no process found
INFO  Deleted database.
INFO  Deleted public folder.
/home/s/Dropbox/blog
s
INFO  Start processing
INFO  Files loaded in 599 ms
...

デスクトップエントリを修正する方法とその理由は何ですか?

更新

データを追加する

s@lokal:~/Dropbox/blog$ whereis hexo
hexo: /home/s/.nvm/versions/node/v10.9.0/bin/hexo
s@lokal:~/Dropbox/blog$ $PATH
bash: /home/s/.nvm/versions/node/v10.9.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games: No such file or directory
s@lokal:~/Dropbox/blog$ 

ディレクトリ/usr/local/bin/draftから手動で実行すると、違いが生じます/home/s/Dropbox/blogか?どこにありhexo、PATHにありますか?
ケビンクルーゼ

@KevinKruse訪問していただきありがとうございます。質問の後、質問を更新しました。それらは実際に考慮されるべきです。
trzczy

回答:


1

削除されたNodejsおよびHexoのインストール。node-v10.11.0-linux-x64をに抽出しました/opt/。Hexoをインストールしました。ターミナルに入力しました

sudo ln -s /opt/node-v10.11.0-linux-x64/bin/node /usr/bin/node
sudo ln -s /opt/node-v10.11.0-linux-x64/bin/npm /usr/bin/npm
sudo ln -s /opt/node-v10.11.0-linux-x64/bin/npx /usr/bin/npx
sudo ln -s /opt/node-v10.11.0-linux-x64/bin/hexo /usr/bin/hexo
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.