ln -sを使用してコマンドラインショートカットを作成するには?

ln -sを使用してコマンドラインショートカットを作成するには?

いつでも端末で開くことができるようにしたいshファイルがあります。端末に「studio」と入力してAndroid studioを開きたいです。

私はこれを一度やったことを思い出しましたが、忘れln -sてオンラインで検索するのに多くの時間を無駄にしました。

そして生成されたシンボリックリンクはどのディレクトリに保存されますか?

これは私が悩んでいる構文です。コマンドが見つかりません。

ricardo@debian:~$ ln -s /opt/android-studio/bin/studio.sh studio
ricardo@debian:~$ studio
bash: studio: command not found

答え1

実行したコマンドは、現在のディレクトリにシンボリックリンクを作成しました。プロンプトを見ると、現在のディレクトリはホームディレクトリです。ホームディレクトリに実行可能プログラムへのシンボリックリンクを作成することは特に有用ではありません。

プログラム名を入力すると、シェルはリストされたディレクトリ内でそのプログラムを探します。PATH環境変数。この変数の値を表示するには、を実行しますecho $PATH。ディレクトリは:コロン()で区切られています。一般的なパスは/home/ricardo/bin:/usr/local/bin:/usr/bin:/bin次のとおりですが、バリエーションがたくさんあります。

にリストされているディレクトリの1つにこのシンボリックリンクを作成する必要があります$PATH。すべてのユーザーがコマンドを使用できるようにするには、次の場所にリンクを作成します/usr/local/bin

sudo ln -s /opt/android-studio/bin/studio.sh /usr/local/bin/studio

自分だけのコマンドを使用できるようにするには(管理者権限がない場合のみ)、ホームディレクトリのサブディレクトリ~/binにリンクを作成します。bin

ln -s /opt/android-studio/bin/studio.sh ~/bin/studio

/home/ricardo/binあなたのディストリビューションがあなたのディストリビューションPATH/home/ricardoホームディレクトリがある場所)に配置されていない場合は、まず次の行を追加してmkdir ~/binそのディストリビューションを作成してから、ディストリビューションに追加します(ファイルがない場合はファイルを作成します)。PATH~/.profile

PATH=~/bin:$PATH

この.profileファイルはログイン時に読み込まれます。実行すると、現在の端末からファイルを読み取ることができます. ~/.profile(その端末で起動されたプログラムでのみ機能します)。

答え2

必要なものを達成する最も直感的な方法は、エイリアスを使用することです。タイプ:

alias studio=/opt/android-studio/bin/studio.sh

または、.profile またはより良いファイルに関連する別名を入力します。シェルは$ ENVを使用します。

それでも追加する必要があります。

/opt/android-studio/bin

ソフトウェアを使用するには、PATHに追加してください。まず、拡張パスなしで動作することを確認することをお勧めします。

関連情報