私はこの会社で約8年間働いてきましたが、ユーザーにソフトウェアのユーザーサポートを提供するためにネットワークに継続的に接続するソフトウェアベンダーがいるという事実は常に混乱していました。
私の問題は、彼らが私たちのサーバーに接続する必要があるとき、彼らが私たちのサーバーにアクセスするためにデスクトップから次のコマンドを実行することです。
$ modem1
$ internet
$ take EUUK_9010
EUUK_9010は私たちが提供した顧客番号のようですが、他のコマンドは何をしますか?これは端末を開いて文章を書くのと同じようですが、なぜそうしないのですか?ssh [email protected]
答え1
これらのコマンドは標準のUnixコマンドではないため、何でも構いません。
まず、シェルが実行されているときに実際に呼び出される内容を見てみましょう。
$ type modem1
タイプは、照会されたコマンドがエイリアス、関数、または実行可能ファイルであるかどうかを示すことができます。
後者の場合、file コマンドを使用してシェルスクリプトかバイナリファイルかを確認できます。たとえば、次のようになります。
$ file /usr/bin/modem1
注:POSIXまたはBourneシェル(sh、ksh、zsh、bash、ash、dashなど)でコマンドを入力したときに何が実行されるかを確認するには、commandの代わりにtype
commandを使用していることを確認してくださいwhich
。後者はPOSIXでは指定されず、Unixシステムでは欠落する可能性があります。またwhich
、Unix/Linux システムに頻繁に存在する実行可能ファイルは、PATH 内のコマンドがエイリアスまたは関数によってオーバーライドされるときに役に立たない情報を提供します。 .which
csh
tcsh