2010-09-08 3 views
5

Kabuk betiğini kullanarak tüm klavye vuruşlarını nasıl yakalayabilirim. Klavye aktiviteleriyle ilgili herhangi bir komut var.kabuk komut dosyası

+3

Lütfen neyi başarmaya çalıştığınız konusunda daha açık olun. –

cevap

1

trap komutuna bakın.

Örneğin, konsolda türü:

trap "echo \"Arrrrggghhhh\"" INT 

Şimdi Ctrl + C basın - eğlence eğlenceli :)

0

tüm giriş ve çıkışları log istiyorsanız, yapabilirsiniz script komutunu kullanın.

$ script transcript.txt 
Script started, file is transcript.txt 
$ echo 'Hello, world!' 
Hello, world! 
$ exit 
Script done, file is transcript.txt 
$ cat transcript.txt 
Script started on Thu 09 Sep 2010 03:06:56 PM EDT 
$ echo 'Hello, world!' 
Hello, world! 
$ exit 

Script done on Thu 09 Sep 2010 03:07:06 PM EDT 
+0

Sadece kabuk komutlarını yakalar, tarayıcıda veya editörlerde yapılan vuruşları değil mi? – Rajeev

+0

@Rajeev 'script', editörlerde veya diğer programlarda yapılan tuş vuruşları dahil olmak üzere terminale tüm giriş ve çıkışları yakalar. Sadece terminalden geçen giriş ve çıkışları yakalar; Bir program yeni bir pencere açarsa veya terminalden başka bir kaynaktan gelen klavye girişini alırsa, 'script' bunu yakalamaz. Bundan daha fazlasını istiyorsanız, aradığınızı açıklığa kavuşturmak için lütfen sorunuzu düzenleyin. –

+0

Gereksinimleri bildiğim kadarıyla, tüm önemli vuruşları yakalamak istiyorum. Soruyu düzenlemem gerekiyorsa ve çözüm hakkında bana bilgi verdikten sonra bana bildirin. – Rajeev