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:
created: 03/21/2008 15:21:51
modified: 03/21/2008 15:21:51
A locked file is safe from accidental removal:
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
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.
Increase ad revenue 50-250% with Ezoic
More Articles by Anthony Lawrence
Find me on Google+
© 2012-07-07 Anthony Lawrence