Some of you may be familiar with the tsch shell's (the default shell in Terminal) auto-complete feature. When typing a file name, simply hit tab after enough of the name has been specified to be specific. Example: typing "De" in your home directory and hitting tab gives you "Desktop".
This feature also works in the Finder! By selecting the Go -> Go To Folder menu item, you bring up a message box. By typing, for example: "/user/hoff/De" and hitting TAB, you get "/user/hoff/Desktop"! This can be usefull if you wish to access folders with long names.
Just about everybody working in an NT world under Mac OS X should use Dave. Thursby Software made it available for free, waiting for a commecial release and , IMHO, that's really thinking different!
[Editor's note: Thursby Software has put up a support and download page for DaveX, and the actual file can be downloaded using this link. Just a heads-up that their server is quite busy, and the download may be very slow -- it took about 20 minutes for me to download it earlier this morning.]
I noticed that my preferences for Clock.app, specifically the setting to have it as a free-floating clock and not in the dock, were lost each time I logged out. I know that this is a much less than ideal solution, but I figured that since I loaded Terminal on login anyway, I would just add a defaults line to my ~/.tcshrc file. Specifically, adding the following line to that file, and having Terminal load first on login, keeps the clock floating:
defaults write com.apple.clock InDock "0"
I would more than welcome a reply from anyone who knows the right way to do this!
After trying out all the suggestions for running scripts (Perl, bash, tcsh, etc.) in the GUI and finding them less than satisfying, I decided to write my own app to do it the right way. I'm looking for a few folks to help give it a once-over prior to releasing it for general availability.
If you're interested in giving it a try and willing to give me a thorough critique, you can download it from my mac.com homepage. The code has been tested thoroughly on my own TiBook, but I'd like some "thumbs up" from independent third parties before I release it.
[Editor's note: I downloaded and ran Charles' program, and it seems to do exactly what he claims - it puts a nice GUI (and basic editor!) around your UNIX scripts. I have not extensively tested it, but it ran the three simple scripts I threw at it without any problems. Definitely worth a look, and Charles is looking for feedback if you give the program a trial run...]
Those of you who lust after the good old days of the text adventure may find this tip useful. The default installation of Mac OS X includes Emacs 20.7.1. Emacs is a very powerful tool, and includes the ability to retrieve/post news or mail, act as a calendar/diary application and has powerful text editing features. It also includes a few amusing games, most of which need to be executed within Emacs itself, except for one... dunnet. Using the following command at the shell will execute the game without opening up Emacs directly:
emacs -batch -l dunnet
For anyone familiar with text-based adventure games you will find most of the usual commands work (north, east, south, west, get, look, help, quit...). The following two commands allow you to save and restore your game to or from a specific file:
I know some of you know this, but I guess most of you who do know this will get it wrong most of the time.
When you are selecting items in the mailbox in Mail, you drag the mouse downwards or upwards; to drag it to the trash, you drag it sideways until the envelope icon comes up and then drop it on the 'deleted messages' folder.
[Editor's note: There are a multitude of ways to do both of these (select, delete) tasks in mail; these are just two of the more interesting ones. The behavior that seems most unusual to me is the up/down drag select; I keep expecting it to move the item!]
There's a big security hole if you're using Xmorph [Editor: a theme-switcher for OS X]. Look in ~/Library/Preferences/Xmorph Preferences. If you've authenticated once, you should be looking right at your admin password. The author insists that this is a "feature." Feature or not, no password should ever be stored in plain text. Another Real Basic app...
[Editor's note: See the comments - this 'hole' is completely optional and at the user's discretion. Seems like a reasonable balance of ease-of-use and security - you choose whether or not you'd like your admin password saved in cleartext.]
Demos Commander is a great shell utility for directory browsing and file management including viewing, copying, editing, and moving. This is a Unix app similar to Norton Commander for DOS. You can find the source for it at: ftp://ftp.cronyx.ru/cronyx/deco/deco383.tgz.
[Editor's note: I downloaded and installed this package, and it does exactly what Mike claims - it brought back instant memories of working in the the Norton DOS Commander back in the early 1980's! If you dislike typing 'mv' and 'cp' commands in the shell, this is a great utility! Read the rest of the article for full installation instructions. You'll need to have the dev tools installed.]
[UPDATE: I've made a pre-compiled binary version available on my mac.com home page for those that don't have the dev tools or don't want to muck around with compiling. Read the rest of the article for the brief instructions to get the pre-compiled binary working.]
A question on the Macaddict forums asked how to disconnect other users from an OS X machine using the terminal. One method, courtesy of an experienced UNIX-using friend of mine, is as follows:
1) Type ps aux | grep username, where username is the short name of the user you wish to disconnect.
2) Look for the shell process for the user in question in the 'ps' output. If your users use the standard (tcsh) shell, the process name will be -tcsh (tcsh).
3) Note the process number in the second column. For this example, assume it's 123.
4) Type kill -15 123, where 123 is the actual process number you found in step two. My admittedly poor interpretation of this step is that it attempts to nicely end the processes associated with the user. I'm sure that's not completely correct, but it is the general idea.
5) Type kill -9 123, where 123 is the actual process number from step two. This will end the user's session for certain.
I haven't tried this one myself yet, but I fully expect it will work. Are there other (easier, cleaner?) ways to log out a user from the terminal?