私のホームディレクトリにRaspberry Piアドレスを持つファイルがありますpi
。
pi=192.168.0.173
Piに接続するには、ホームディレクトリで次の操作を行います。
. pi && ssh pi@$pi
効率的。その後、次のスクリプトで改善しました~/bin
。
#!/bin/bash
. ~/pi
ssh pi@$pi
今私はこれをします:
pi
もちろん動作します。しかし、時にはPi IPが必要です。次に、ホームディレクトリで次の操作を行います。
. pi
しかし、ファイルをインポートする代わりにPiに接続しています。状況をさらに変にするために、
$ . pi && echo ok
pi@raspberrypi:~ $ logout
Connection to 192.168.0.173 closed.
ok
zsh
私はすべてdash
で同じ動作を取得しますsh
。誰かがこれを説明できますか?
答え1
man
これらすべてを知っておきましょう... Bashからのものです。
ソースファイル名[パラメータ] 現在のシェルからファイル名のコマンドを読んで実行します。 環境を終了し、最後のコマンドexeの終了ステータスを返します。 ファイル名から削除されました。 ファイル名にスラッシュが含まれていない場合 PATH のファイル名は、以下を含むディレクトリを検索するために使用されます。 ファイル名。 PATHで検索されたファイルは実行可能である必要はありません。 Bashがposixモードでない場合、現在のディレクトリは次のようになります。 PATH でファイルが見つからない場合、検索が実行されます。 ソースパスオプションの場合 shopt 組み込みコマンドがオフになっており、パスがありません。 検索されました。引数が指定されると正の値になります。 filenameを実行したときのパラメータです。そうでなければ 位置パラメータは変更されません。返品状態は スクリプトの最後のコマンドの終了状態(ない場合は0) コマンドが実行されます)、ファイル名が見つからない場合はfalseを返します。 読めません。