実現したいこと
/home/User/repos/hoge/hoge.sh
のシンボリックリンクを
/home/User/bin
(PATH通ってます) 配下に hoge
として作成しました。
alias として登録せずとも、hoge
と打ち込むことでhoge.sh
を実行させたいと考えてます。
問題
hoge.sh
は同階層にあるhoge.py
を内部で実行しています。
現状、./path/to/hoge.sh
での実行時は成功しますが、
シンボリックリンクhoge
での実行時には失敗してしまいます。
【ディレクトリ構造】 /home/User/repos/hoge/hoge.sh hoge.py /home/User/bin/hoge # hoge.sh のシンボリックリンク
【問題のコード】 cd $(dirname $0) ... DATA=`python hoge.py` echo $DATA ...
【実行結果】 $ ./path/to/hoge.sh いい感じの出力 $ hoge python: can't open file 'hoge.py': [Errno 2] No such file or directory
恐らくcd $(dirname $0)
時に移動している階層がシンボリックリンク時に/home/User/bin
となっているせいだと考えられます。
ただ、これに対する解決策が思いつきません。
そもそも実行したいshファイルのシンボリックリンクをbin
配下に作成するのはナンセンスなのでしょうか...?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/11/16 06:35 編集