毎回ターミナルを開いて完全なSSHコマンドを書くのは大変です。 Mac OS X 10.6.8(Snow Leopard)でSSH接続のターミナルショートカットを作成するにはどうすればよいですか?
接続するカスタムポートもあります。
最も* NIX-yの答えは、SSHの機能を有利に使用することです。
~/.ssh/
にconfig
という名前のファイルを作成します(ホームフォルダーに.ssh
という名前のフォルダー)。次のように、接続する各コンピューターのエントリを追加します。
Host compy
HostName 98.256.211.12
Port 90
User sidney
IdentityFile ~/.ssh/my_rsa_key
HostName
には、IPアドレスまたは実際のホスト名を指定できます。Port
は必須ではありませんIdentityFile
は必須ではありません。ssh compy
キーベースの認証を使用し、キーのパスワードをキーチェーンに保存する場合、パスワードを入力する必要さえありません。
さらに、サーバーへの接続に使用するコマンドライン(ssh compy
またはssh -i ~/.ssh/my_rsa_key -p 90 [email protected]
)を含む.commandファイル(拡張子が.commandのプレーンテキストファイル)を作成できます。ターミナルで開き、そのコマンドを実行します。
ターミナルのNew Remote Connection…
メニュー項目を使用して接続することもできます。をクリックして、SSHでホストを追加するだけです + 右の列のボタン。
続きを読む [〜#〜]こちら[〜#〜]
あなたが私が考えることができるいくつかのオプションがあります:
お気に入りのテキストエディタで、sshコマンドを使用してプレーンテキストファイルを作成して保存します。
ssh -p 23 [email protected]
ファイルにWHATEVERYOUWANT.command
という名前を付けます。次に、.command
ファイルに実行権限(chmod 755 /PATH/TO/WHATEVERYOUWANT.command
)を設定する必要がありますが、ファイルをダブルクリックするとターミナルが開き、そのコマンドを実行できます。
Bash(Mac OS Xではデフォルトのシェル)を使用していると仮定すると、ホームフォルダーの.bashrc
にエイリアスを追加できます。
例えば。 alias sshserver='ssh -p 23 [email protected]'
エイリアスの詳細については、[Wikipedia]( http://en.wikipedia.org/wiki/Alias_(command) またはドキュメントを参照してください。
これを行うには多くの方法があります。これが私がすることです:
ターミナル設定を開く
歯車アイコンを使用して、[設定]タブでプロファイルを複製します。これによりデフォルト設定ファイルが変更されるため、古いデフォルトを複製前の状態に戻します。
新しいカスタム設定で、[起動時にコマンドを実行]セクションのsshコマンドでシェルタイプをクリックします。
新しい設定の名前をCustomから任意の名前に変更します。
新しいウィンドウまたは新しいタブのメニュー項目からセッションを開始できるようになりました。もちろん、システム環境設定のキーボードとマウスでキーボードショートカットを割り当てることができます。
Sshで秘密鍵を使用し、〜/ .ssh/configメソッドを使用したい場合は、ホストに 'IdentityFile'属性を追加し、その後にキーパスを追加できます。つまり:
Host SomeServer
User ubuntu
HostName someserver.com
IdentityFile ~/.ssh/private.key
回答の1つにコメントとしてこのビットを追加しましたが、私の評判はまだ低く、許可することはできません。
Macのほぼどこからでもssh接続をすばやく開くには、次の手順を実行します。
ssh://[email protected]
*.inetloc
ファイルになります。~/connections
ファイルを保持する*.inetloc
という名前のファイルを作成しました。このファイルの名前は自由に変更でき、アイコンを変更することもできます。*.inetloc
ファイルをDock、Finderのサイドバーまたはツールバー、またはその他の場所にドラッグアンドドロップできます。 (Spotlightでも選択できます)コマンドを実行するAppleScriptを作成できます。
tell application "Terminal"
do script "ssh server.example.com"
end tell
セッションを起動するために開くことができるファイルが必要な場合は、.inetlocを簡単に作成できます。 TextEditで、ホストへのSSH URLを入力します。例:
ssh://username@hostname/path
TextEditはそれをURLとして認識します。 URLをデスクトップにドラッグすると、次のように.inetlocが作成されます。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>URL</key>
<string>ssh://username@hostname/path</string>
</dict>
</plist>
次に、そのファイルをDockなどの任意の場所に配置するか、Quicksilverなどのランチャーで開くことができます。
Quicksilver用のSSHプラグインをお勧めしますが、最新のv.84を使用すると、β54(3815)よりも新しいQSがクラッシュします。
Quicksilverを使用している場合は、RemoteHostsと呼ばれる優れたアドオンがあり、〜/ .hostsファイルまたは〜/ .ssh/known_hostsファイルを自動的にスキャンして自動入力します。
新しいホストへの接続は、Quicksilver(CMD-Space)を開き、一意になるようにホストの十分な文字を入力し、最後にEnterキーを押すのと同じくらい簡単です。
ローカルのbinディレクトリにファイルを作成できます
/usr/local/bin/dev
次の内容で:
#!/bin/bash
ssh -p 12345 [email protected]
実行可能にする
chmod a+x /usr/local/bin/dev
これを使用して、ターミナルから呼び出すことができます
dev
そして、あなたはそれを開くための自動タスクを作成します
tell application "Finder" to set theSel to selection
tell application "Terminal"
set theFol to POSIX path of ((item 1 of theSel) as text)
if (count of windows) is not 0 then
do script "/usr/local/bin/dev2" in window 1
else
do script "/usr/local/bin/dev2"
end if
activate
end tell
キーボードのランチャーまたはホットキーからショートカットを作成することもできます
ランチャー:自動化からアイコンをドラッグしてドックバーに保存
キーボードショートカット:
create as service in automator
open system services -> keyboard -> shortcuts -> app shortcuts -> enter title of automator and key shortcut
面倒な部分が長くて複雑なsshコマンドを入力しているが、ターミナルを開いてもかまわない場合、および何らかの理由で以前の回答のアプローチを使用したくない場合は、エイリアスまたは関数。次のようなものをシェルのドットファイルに追加します(.profileまたは.bash_profileまたは.bashrcまたは.cshrcまたは.zshrcなど):
alias connect.dev='ssh -p 12345 [email protected]'
他のアプローチと比べて私が見ることができる唯一の利点は、(少なくともzshでは、bashだと思います)コマンド補完を使用して、接続するすべてのサーバーを確認できることです。たとえば、25の異なるサーバーに接続していて、.ssh/configファイルで指定したすべての名前/エイリアスを覚えておきたくないとします。すべてのエイリアスが「connect。」のように同じもので始まる場合は、コマンドプロンプトで「connect。[TAB]」と入力するだけで、可能なすべての補完が表示されます。 (免責事項:これを機能させるには、シェルのカスタマイズが必要になる場合がありますが、zshやおそらくbashでもデフォルトで機能すると思います。)
あなたのために吸う部分がターミナルを開いているなら、あなたは DuckBill のようなものを使うことを試みることができます、しかし私がターミナルの外でsshを実行することを考えることができる唯一の理由はおそらくXウィンドウサーバープログラムを実行するためかもしれませんまたはsshトンネル。