How are terminal length and width forwarded over SSH and telnet?

When I view the length and width of my terminal emulator with stty size then it is 271 characters long and 71 lines tall. When I log into another server over SSH and execute stty size, then it is also 271 characters long and 71 lines tall. I can even log into some Cisco IOS device and terminal is still 271 characters long and 71 lines tall:

How do I find number of vertical lines available in the terminal?

I’m writing a script which shows the git log for a directory when I cd into it. Such a log can be overwhelming, containing hundreds of lines. So far I have been limiting that to a hard-coded 20 lines (... | head -n 20), which is fine on the screen at work, but too much on the smaller MacBook screen at home.

What does the tilde (~) mean at the end of a filename?

What is the file with the ~ at the end of the filename for? $ ls # aliased to add flags -rwxrwxr-x 1 durrantm 2741 May 16 09:28 strip_out_rspec_prep_cmds.sh~* drwxrwxr-x 13 durrantm 4096 May 16 14:21 ../ -rwxrwxr-x 1 durrantm 2221 May 16 14:58 strip_out_rspec_prep_cmds.sh* This is not the same as .swp files which are … Read more