最近、Light Tableをインストールしてgitリポジトリからダウンロードし、このWebサイトの指示に従ってデスクトップランチャーを作成しました。
ターミナルに直接入力してプログラムを実行したい
LightTable
ではなく
./opt/LightTable/deploy/LightTable
最近、Light Tableをインストールしてgitリポジトリからダウンロードし、このWebサイトの指示に従ってデスクトップランチャーを作成しました。
ターミナルに直接入力してプログラムを実行したい
LightTable
ではなく
./opt/LightTable/deploy/LightTable
回答:
これは基本的な質問ではありません。これを行う最良の方法はエイリアスを作成することです。例としてnetbeansを使用します
ターミナルを開く Ctrl+Alt+T
nano ~/.bashrc
これをファイルの最後に書きます:
alias netbeans='/home/john/netbeans-7.0.1/bin/netbeans'
Ctrl + x
Y
Enter
netbeansワードは、プログラムの起動に使用するコマンドです。必要に応じて変更できます。引用符の中には、netbeansエイリアスが呼び出されたときに実行するコマンドがあります。
このコマンドをアクティブにするには、ターミナルを再度開く必要があります
/usr/bin
単純な実行可能プログラムで、他のファイルに依存しない場合は、実行可能ファイルをコピーしてみてください。他のファイルに依存する場合、最善の方法はプログラムへのショートカットコマンドを作成することです。
エイリアスを作成する場所は自分で(.bashrc、.profileなど)です。ただし、個人的にはすべての環境変数を.bash_aliases
ファイルに入れます(最初のスタンスで作成する必要があります)。
HOMEフォルダーに.bash_aliasesファイルを作成し、好きなように編集します。次に、ショートカットを作成するために、次のことができます。
alias LightTable='path_to_opt/LightTable/deploy/LightTable'
ファイルを保存して、それだけです。
ps:Lを大文字にするのを忘れた場合や、誤ってcapslockがアクティブになった場合に、エイリアスをlighttableおよびLIGHTTABLEとして置くこともできます。そのため、コマンドを再度入力する必要はありません。
/usr/local/bin
代わりに、Aptを介してインストールされていないものを入れることをお勧めします。入っているものは/usr/bin
消去したり、Aptパッケージに置き換えることができますが、入っているもの/usr/local/bin
はそのままにしておきます。
他の回答者がこれを提案しなかった理由はわかりませんが、OPが実際に指摘したように、$PATH
変数の先頭に追加することは私がこれを達成する方法だったでしょう:
echo 'PATH=/opt/LightTable/deploy:$PATH' >> ~/.bash_profile
source ~/.bash_profile
次に、次を実行します。
LightTable
LightTable
するlighttable
ためにエイリアスを作成しますecho 'alias LightTable=lighttable' >> ~/.bash_alias && source ~/.bash_alias
。
エイリアスよりもシンボリックリンクを作成した方が良いと思います。エイリアスは、不要な場合にコマンドラインで置換を行う場合があります。シンボリックリンクを作成すると、必要に応じてプログラムを実行できます。
sudo ln -s full_path_to_opt/LightTable/deploy/LightTable /usr/local/bin
これにより、LightTableが実際に存在する場所へのショートカットが/ usr / local / bin(PATHに既にあるはずです!)に作成されます。また、「LightTable」の大文字が気に入らない場合は、シンボリックリンクの名前も変更できることに注意してください。
sudo ln -s full_path_to_opt/LightTable/deploy/LightTable /usr/local/bin/lighttable
参照用に、プログラムがぎこちないように設計されている場合、つまり、構成ファイルやライブラリなどが見つからないという不満がある場合は、ラッパースクリプトを作成する方が便利かもしれません。これを行うには、「LightTable」(または好きなもの)を含むファイルを作成します(とりあえず好きな場所)。
#!/bin/sh
# Simple script to run LightTable
if ! cd full_path_to_opt/LightTable/deploy/LightTable ; then
echo "$0: error: LightTable directory not found." >&2
exit 1
fi
exec ./LightTable
このファイルの許可を変更します。
chmod 755 <wrapper_script>
そして、それが機能するかどうかを確認するために実行してみて、もしそうなら/ usr / local / binに移動してください:
sudo mv -i <wrapper_script> /usr/local/bin
Ubuntuで始めたときに、これを試みました。LightTableを端末に配置すると、ディレクトリでLightTableという名前のファイルが検索されます$PATH
。echo $PATH
ディレクトリを取得するために置くことができます。
でLightTableプログラムを実行する場合./opt/LightTable/deploy/LightTable
は、ライトテーブルファイル/usr/games or /usr/bin.
を配置する必要がありますが、スーパーユーザー権限が必要です
Ctrl + Alt + Tでターミナルを開きます
次に置く
を使用してLightTableのショートカットを作成することを好みます
sudo ln -s path/to/LightTable /usr/games/LightTable
次に、SUパスワードを入力します。次に、LightTable
ターミナルで使用してプログラムにアクセスできます
、/usr/bin
またはの/usr/local/bin
代わりに/usr/games
、$PATH
ディレクトリであるものを置くことができます。そのようにする必要はありませんが、次の場所に置くことをお勧めします。/usr/local/bin
また、lightpath
代わりに出力ファイルを変更することをお勧めしますLightPath
PATH
環境変数に含まれるディレクトリを追加することは、これを達成するための最良の方法ではないことが多く、システムを破壊したり、セキュリティの脆弱性を作成したりすることさえあります。(これからコマンドに変換される他の実行可能ファイルと、それが追加される場所を考慮する必要がありますPATH
。)シェルエイリアスの追加は、ここでの回答で説明しているように、そのような複雑さを考慮したくない人には適しています。また、問題の特定のアプリに合わせてさらに細かく調整されています。したがって、これはその質問の複製ではありませんが、少し重複しています。