ps -e grep ssh-agent の先頭に nano を誤って入れました。

ps -e grep ssh-agent の先頭に nano を誤って入れました。

タイトルで述べたように、誤って以下を実行しました。

nano ps -e | grep ssh-agent

これで正しく実行すると、ps -e | grep ssh-agent次のようになります。

# ps -e | grep ssh-agent
 1613 ??         0:00.05 /usr/bin/ssh-agent -l
27195 ttys000    0:00.00 grep ssh-agent

閉じ込められたコマンドの状態から離れるには、セッションを終了する必要があります。振り返ってみるとやり直すこともできたと思います。

私が試したことは次のとおりです。

# ssh-agent -k
unset SSH_AUTH_SOCK;
unset SSH_AGENT_PID;

それから私は次を得ます:

SSH_AGENT_PID not set, cannot kill agent

その後、次のことを試しました。

ps -ef | grep ssh-agent

今私はこれを持っています:

# ps -ef | grep ssh-agent
  501  1613     1   0 Sun07PM ??         0:00.06 /usr/bin/ssh-agent -l
  501 27629 26750   0 12:06PM ttys000    0:00.01 grep ssh-agent 

誰でもこの問題を解決するのに役立ちますか?私がよく知っている分野ではないので、もはやこの問題に対処したくありません。

ベストアンサー1

macOSのnanoバージョンは、標準出力がパイプであることを好みません。まあ、それはあまりありません。ただ殺してください。別の端末タブを開いて実行します。

pgrep nano

出力が単一の数値の場合、この1つのナノプロセスしかないため終了します。

pkill nano

複数のプロセスが表示されたら、pgrepどのプロセスを終了するかを決定する必要があります。走る

ps -eww |grep nano

を含む行を見つけますnano ps -e。行の最初の数字はプロセスIDです。その番号をコピーして貼り付けてkillコマンドに渡します。たとえば、

27629 ttys000    0:00.00 nano ps -e

その後実行

kill 27629

パイプの左側が終了すると、grepプロセスは自動的に終了します。

これを行い、端末を再インポートすることもできました。今でもこれを行うことができ、いくつかの役に立たないプロセスが終了します(もちろん、端末は回復されません)。

ssh-agentプロセスを実行するのは正常です。 macOSセッションで動作します。 macOSで実行しないでください。ssh-agent -kシステムが設定されていないため、実行してSSH_AGENT_PIDssh-agent -k実際には何もしません。

おすすめ記事