Saya perlu merekam setiap penekanan tombol dan menyimpan dalam file di direktori pengguna ~, ketika menggunakan akun saya, saya bukan sudoer dan saya tidak dapat menginstal program (seperti logKey ) dengan cara apa pun. Bagaimana saya bisa melakukannya dengan menggunakan terminal?
CATATAN: Pertanyaan ini bukan duplikat dari pertanyaan penyebutan lainnya; dalam pertanyaan ini saya bertanya tentang setiap keystroke, sementara di yang lain penanya bertanya tentang keystroke di sesi terminal.
Jawaban:
xinput test
dapat melaporkan semua acara keyboard ke server X. Pada sistem GNU:Jika Anda ingin mendapatkan nama-nama kunci dari kode-kode kunci, Anda dapat memposting proses itu dengan:
Tambahkan
> file.log
untuk menyimpan dalam file log. Atau| tee file.log
untuk kedua log dan melihatnya.xinput
menanyakan XinputExtension dari server X. Itu sedekat yang Anda dapatkan sebagai standar (saya tidak mengetahui adanya standar yang mencakup utilitas X) atau perintah umum untuk melakukan itu. Itu juga tidak memerlukan hak root.Jika X server dan xinput mendukung versi 2 dari XinputExtension, Anda dapat menggunakan
test-xi2
alih-alihtest
yang memberikan informasi lebih lanjut, khususnya keadaan pengubah (shift, ctrl, alt ...). Contoh:Anda dapat menerjemahkan kode kunci (dalam
detail
) ke keysym dengan bantuanxmodmap -pke
lagi, daneffective
bitmask pengubah untuk sesuatu yang lebih bermanfaat dengan bantuanxmodmap -pm
. Contohnya:akan menghasilkan:
ketika saya menekan Shift + Alt + q ketika num-lock aktif.
Perhatikan bahwa Anda tidak perlu memiliki hak pengguna super untuk menginstal program. Jika Anda memiliki akses tulis ke suatu tempat di sistem file di mana mengeksekusi izin diberikan (direktori home Anda
/tmp
,,/var/tmp
...) maka Anda dapat menyalinxinput
perintah dari sistem yang kompatibel di sana dan menjalankannya.sumber
xinput
1.6.1
atau lebih baru untuk--root
. Utilitas X dapat diunduh secara individual dari xorg.freedesktop.org/releases/individual/app . Jika Anda tidak ingin mengkompilasi dari sumber. Debian memiliki xinput 1.6.1 untuk beberapa arsitektur untuk Linux atau kfreebsd.xmodmap
telah di implementasi referensi X sejak 1987 setidaknya. Sistem apa yang kita bicarakan di sini? Mungkinkah ituxmodmap
tidak ada di Anda$PATH
(/usr/dt/bin
atau lainnya?).Sudahkah Anda mempertimbangkan untuk menggunakan
script
perintah?sumber