Belirli bir cmd “scp” nin yürütüldüğü tty nasıl bulunur


11

Belirli bir komutu kimin yürüttüğünü ve çalıştırmak için hangi terminalin kullanıldığını nasıl öğrenebilirim?


Orijinal :

Belirli bir cmd'nin kim tarafından yürütüldüğünü ve terminalim hakkında nasıl bilebilirim?


1
Bu soruyu biraz daha açık bir şekilde ifade edebilir misiniz?

1
Şunu mu demek istediniz: "scp'yi kimin kullandığını belirlemek için hangi ps komutunu kullanmalıyım?" Bu ps -ef olurdu | grep scp
Michael Todd

Yanıtlar:


7

Hangi komutların yürütüldüğünü görmek için "ps -ef" kullanın. Bu, herkesin ne yaptığını size söyleyecektir , ki bu genellikle çok fazla bilgi.

Belirli bir komutu kimin çalıştırdığını bulmak için daraltmak için şöyle bir "grep" filtresi ekleyebilirsiniz:

ps -ef | grep scp

Bu, tüm scp komutlarını döndürür, ancak grep sadece dizeyle eşleştiği için scp ve scp harflerine sahip diğer komutları arayan grep komutunu da döndürebilir. Bu nedenle, grep'e verilen ifadeyi akıllıca kullanmanız gerekebilir (çoğu zaman alıntı yapmanız ve bir boşluk eklemeniz gerekir:

ps -ef | grep "scp "

veya düzenli ifadelerden daha iyi yararlanın ve:

ps -ef | grep "[s]cp "

Kullanıcıyı biliyor ve sadece ne çalıştığını bilmek istiyorsanız o zaman "ps -fu" arkadaşın. Örneğin

ps -fu tom

Tabii ki, tom'un scp süreçlerini elde etmek için grep ile birleştirilebilir:

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

Sütun 6 tty'dir.


1
'Grep "[s] cp"' hilesi için +1 - 'procname' dediğim bir komut dosyasında kullandığım şey bu.
Jonathan Leffler

3

ttyStandart girişe bağlı terminalin dosya adını bulmak için kullanabilirsiniz .

Sorunuzun ikinci kısmı için sudoveya susonra grep -c 'command' /home/username/.bash_history.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.