If you install the Xcode Tools from your OS X CD, you get a lot of free development tools, and you also get the "setfile" and "getfileinfo" utilities. These can set or display a number of HFS+ file attributes that you may not have even known existed. Some of these seem to be either unimplemented or are perhaps for use only by certain programs, but two (visibility and locking) are useful for our use.
You can do this from the "Get Info" dialog also, but the command line method is "setfile -a L filename". After doing that, a "getfileinfo" will show a capital "L" in its listing:
getfileinfo lockme file: "/Users/apl/Desktop/lockme" type: "" creator: "" attributes: avbstcLinmedz created: 03/21/2008 15:21:51 modified: 03/21/2008 15:21:51
A locked file is safe from accidental removal:
rm lockme override rw-r--r-- apl/apl uchg for lockme? y rm: lockme: Operation not permitted
However, that means you can no longer edit it, too, so you don't want to do this to files you need to change often.
You can make a file invisible to Finder by using the "V" flag:
$ setfile -a V noseeum $ getfileinfo noseeum file: "/Users/apl/Desktop/noseeum" type: "" creator: "" attributes: aVbstclinmedz created: 03/21/2008 15:36:01 modified: 03/21/2008 15:36:01
Note that if a file is locked, you can't set this or any other attribute until you unlock it ("setfile -a l filename"). Even if you have set V, the file remains visible to "ls" in Terminal and will be visible even in Finder unless AppleShowAllFiles is "No" in your Library/Preferences/com.apple.finder.plist (that is the default, but you may have changed it). If you do need to change this back, you can use the Property List Editor from /Developer/Applications/Utilities, or just do this in Terminal:
defaults write com.apple.finder AppleShowAllFiles No
Or just vi the plist file directly - it's plain text.
You'd need to relaunch Finder (Apple Menu,Force Quit, choose Finder and click "Relaunch") for that change to take effect.
Got something to add? Send me email.
(OLDER) <- More Stuff -> (NEWER) (NEWEST)
Printer Friendly Version
Increase ad revenue 50-250% with Ezoic