특정 cmd "scp"가 실행되는 tty를 찾는 방법


11

특정 명령을 실행 한 사람과 실행하는 데 사용 된 터미널을 어떻게 알 수 있습니까?


원본 :

특정 cmd가 누구에 의해 실행되고 터미널에 대해 알고 있는지 어떻게 알 수 있습니까?


1
조금 더 명확하게이 질문을 다시 쓸 수 있습니까?

1
"scp를 사용하는 사람을 결정하기 위해 어떤 ps 명령을 사용해야합니까?" 그것은 ps -ef 일 것입니다 | grep scp
Michael Todd

답변:


7

어떤 명령이 실행되고 있는지 보려면 "ps -ef"를 사용하십시오. 이것은 모든 사람들 이 무엇을 하고 있는지를 말해 줄 것 입니다. 보통 너무 많은 정보입니다.

특정 명령을 실행중인 사용자를 찾기 위해 범위를 좁히려면 다음과 같이 "grep"필터를 추가하십시오.

ps -ef | grep scp

그러면 모든 scp 명령이 반환되지만 grep이 문자열과 일치하기 때문에 scp 및 문자 scp가 포함 된 다른 명령을 찾는 grep 명령을 반환 할 수도 있습니다. 따라서 grep에 주어진 표현으로 영리해야 할 수도 있습니다 (많은 경우 인용을하고 공백을 추가하면됩니다).

ps -ef | grep "scp "

또는 정규 표현식을 더 잘 활용하고 다음을 수행하십시오.

ps -ef | grep "[s]cp "

사용자를 알고 있고 그들이 무엇을 실행하고 있는지 알고 싶다면 "ps -fu"가 당신의 친구입니다. 예를 들어

ps -fu tom

물론 grep과 결합하여 톰의 scp 프로세스를 얻을 수 있습니다.

ps -fu tom | grep "[s]cp "

열 6은 tty입니다.


1
'grep "[s] cp"'트릭에 +1-스크립트에서 사용하는 것이 'procname'입니다.
Jonathan Leffler 2016 년

3

tty표준 입력에 연결된 터미널의 파일 이름을 찾는 데 사용할 수 있습니다 .

귀하의 질문에, 후반 들어 sudo또는 su다음과 grep -c 'command' /home/username/.bash_history.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.