どのシェルをお使いかわかりませんが(たぶんbashかなと思いますが)、おそらくエイリアスとして alias man='env ..(中略).. man "$@"' のように登録されていてenvコマンドが実行されるようになっているのだと思います。alias man
を実行してみるとわかるでしょう。
ジョブを一時停止させたときにenv LESS_TERMCAP~と表示される
Q&AClosed
解決したいこと
parrotOSでmanコマンドを一時停止させたときに環境変数のようなものが表示される理由を知りたい。
発生している問題・エラー
man psを実行してctrl+zでサスペンドしたところ、上の画像のようにコマンド名ではなく、envから始まる文字列が表記されます。
自分で試したこと
使用したOS
parrotOS 6.0
manコマンド以外でも試しましたが、manコマンドの時のみこの結果が表示されます。
Linuxを学び始めたばかりでまだわからないことが多いので、わかる方いらっしゃいましたら、回答お願いします。
0
1Answer
0Like
Comments
@newbee_aiden
Questionertype man
を実行したら何と出ますか?@newbee_aiden
Questionerエイリアスじゃなく関数でしたね。シェルでジョブをサスペンドすると停止したコマンドが表示されるわけですが、
man ps
を実行したときに実際にシェルが実行しているのは man 関数で、その中で(長い引数付きで)起動されていた env コマンドが停止し、そのコマンド行が表示されている、というわけです。謎は解けたと思いますので、これで解決でしょうか?
@newbee_aiden
Questioner回答ありがとうございます。
謎が解けました。最後までお付き合いいただきありがとうございました。