Friday, April 20, 2007

Ctrl-D another use

Many Unix Admins use the C shell as their interactive shell. An often used feature of Csh is file completion - initiated with 'set filec'. It allows the Csh user to type in partial file names, and then press escape to get them completed where possible. A little known side effect of this is that Control-D (^D) will now generate file listings in the middle of command lines.

Example 1: (where @ is a space)
host > @^D
Lists the current directory

Example 2:
host >ln -s /usr/^D
Lists the /usr directory

host >tar cvf /dev/nrtape /usr/m^D
Lists all m* files in the /usr directory

In each case, after the listing, you get a new command line and are placed at the last point of edit.

Very handy if you you know what you wanted to do but forgot what you wanted to do it with!

No comments: