Seperti yang disebutkan oleh William Pursell , lessmembaca penekanan tombol pengguna dari terminal. Secara eksplisit terbuka /dev/tty, terminal pengendali; yang memberikannya deskriptor file, terpisah dari input standar, dari mana ia dapat membaca input interaktif pengguna. Secara bersamaan dapat membaca data untuk ditampilkan dari input standar jika diperlukan. (Bisa juga menulis langsung ke terminal jika perlu.)
Anda dapat melihat ini terjadi dengan menjalankan
some_command | strace -o less.trace -e open,read,write less
Bergerak di sekitar input, keluar less, dan melihat isi less.trace: Anda akan melihatnya terbuka /dev/tty, dan membaca dari kedua deskriptor file 0 dan mana yang dikembalikan ketika dibuka /dev/tty(kemungkinan 3).
Ini adalah praktik umum untuk program yang ingin memastikan mereka membaca dan menulis ke terminal. Salah satu contohnya adalah SSH, misalnya ketika meminta kata sandi atau frasa sandi.
Seperti yang dijelaskan oleh schily , jika /dev/ttytidak dapat dibuka, lessakan membaca dari kesalahan standarnya (file descriptor 2). lessPenggunaan /dev/ttydiperkenalkan pada versi 177, dirilis pada 2 April 1991.
Jika Anda mencoba berlari cat /dev/tty | less, seperti yang disarankan oleh Hagen von Eitzen , lessakan berhasil membuka /dev/ttytetapi tidak akan mendapatkan masukan dari itu sampai catmenutupnya. Jadi Anda akan melihat layar kosong, dan tidak ada yang lain sampai Anda menekan CtrlCuntuk membunuh cat(atau membunuhnya dengan cara lain); maka lessakan ditampilkan apa pun yang Anda ketikkan saat catsedang berjalan, dan memungkinkan Anda untuk mengontrolnya.
lessmembaca data yang akan ditampilkan dari stdin, dan membaca perintah dari tty. Mereka adalah hal yang berbeda.