About | ACP | Buy | Forum | Industry Watch | Learning Curve | Search | Twitter | Xnews
Home » Learning Curve

SuperShowAllFiles

New product, free product, limited supply, act now. Operators are standing by.


Buy It

Try It

Do you ever find yourself curious about what lies outside your walled garden? Do you sometimes wish you could do more with your Finder than toggle file permissions between 'read-only' and 'read & write'?

Do you sometimes wish you could see all your files?

Introducing SuperShowAllFiles.

SuperShowAllFiles is a quality engineered Cocoa application compatible with all versions of OS X save 9.2.2, 10.0, 10.1, 10.2, and 10.3. SuperShowAllFiles contains a universal binary so it can run on both PowerPC and Ford Intel Macs. And it's free.

The Problem

Apple's default file manager 'Finder' is without a doubt the sorriest excuse for a file manager in the history of mankind. It does almost nothing. And over the years it's been streamlined to do even less.

The high lords of the Apple HI Group have been perplexed from Day One (1 January 1997). They don't understand Unix - the new underbody of the 'Mac' operating system - and they presume in their wisdom that no one else will either.

One of the things Finder likes loves to do is hide files. But that's only one. It also doesn't like not pooping .DS_Store files all over the place (and once upon a time in networks too). It doesn't like showing you full file permissions such as eXecutable bits, sticky bits, set ID bits, file permission flags, and file systems other than HFS and its descendants.

But Finder has a secret setting.

<key>AppleShowAllFiles</key>
<true/>


Finder will in fact make the invisible visible - to a certain extent at any rate - if the above is found in Finder's preference file ~/Library/Preferences/com.apple.Finder.plist and if you take the time to restart Finder so it reads its preferences again.

Of course the questions remain: 1) Why do you want to see what's on your computer anyway? 2) Why are you interested in 'full control' over your own computer system? 3) Are you coincidentally taking prescription medications? 4) Wouldn't you rather use an iPad? Whatever: toggling this secret setting is eminently easy from something known as the command line.

defaults write com.apple.finder AppleShowAllFiles -bool YES; killall Finder

A cleaner way to do the same thing takes a bit more (35 characters more) typing.

defaults write com.apple.finder AppleShowAllFiles -bool YES; osascript -e "tell application \"Finder\" to quit"

This has the advantage of letting Finder make an 'orderly exit'. Responding to a kill signal isn't an orderly way of exiting. Perhaps you just reordered your pretty icons in your visible folders or moved your pretty folders on your desktop or rearranged your desktop. You might want to have this beauty reappear when Finder resurfaces. You need to use the cleaner way.

75 (seventy-five) characters. Or 110 (one hundred ten). Not a lot even for legacy Mac users. And it's not exactly the type of thing you get into every day. You either take the plunge and open Pandora's box or you don't. You either continue gazing into the abyss or you don't.

That doesn't give you a lot: it doesn't expose all the other stuff that makes your file system work. It doesn't show you why things behave as they do on your computer. You might get panicky and contemplate a switch to Ubuntu but that won't help you much either: those Gnomies have been consistently dumbing down their interface as well.

There doesn't seem to be a way out. Those seventy-five/one hundred ten characters are fine if all you want is show all files. Still: it doesn't seem good enough for some people.

Solution One

Solution One is in fact the first command line above, first submitted to Mac OS Hints on 28 March 2001 by 'aaronfaby'.

That's a long time ago.

It looks like Apple has decided to change the defaults key to allow the Finder to show the hidden Unix files. On OS X Final, try this for each user you want to show hidden files and restart the Finder:

defaults write com.apple.Finder AppleShowAllFiles YES

The questions that followed were classic.

Is there a way to show the hidden files in the finder, but not on the desktop? I now have 3 invisible files/folders showing up on my desktop... kinda ugly :P

3 simpler steps:

1. Go to your users home directory
2. Press cmd + caps + G, type in .Trash and hit enter
3. Now having the visible .Trash folder selected, press cmd + T

Voila, it's in the sidebar - or am I missing something?

But remember you also have other trash directories on other volumes.

sorry posted in wrong hint.

Solution One got a very low rating.

Solution Two

The next solution appeared on 10 April 2003. The prelude is absolutely great.

I enjoy using GUI Finder...

The script is as follows.

tell application 'Finder' to quit
display dialog 'Show Hidden Files...' buttons {'ON', 'OFF'} default button 3
copy the result as list to {buttonpressed}

try
  if the buttonpressed is 'OFF' then do shell script 'defaults write com.apple.finder AppleShowAllFiles OFF'
  if the buttonpressed is 'ON' then do shell script 'defaults write com.apple.finder AppleShowAllFiles ON'
end try

tell application 'Finder' to launch

This is my first AppleScript so I am very open to any improvements to it. Perhaps this will be of some assisstance to people like myself. I found it handy to place this script in the Script Menu, and hotkeyed this script also.

robg tried it and it worked fine. But Solution Two got a very low rating as well.

Solution Three

The third solution appeared on Mac OS X Hints on 17 August 2005. (Yes that's two more years waiting for improvements. Small steps that are also very very slow steps.) This new hint involved using the new Automator available with 10.4 Tiger.

Quite a long time ago, this hint explained how to use the command line to make the Finder show all those hidden unix files. I turned it into a little shell script, and stuck it where I could find it. Then more recently, a bunch of AppleScript solutions were hinted at, in a thread that started in mid 2003, and had still more postings as of a couple of months ago.

Now with Tiger, however, it's possible to make showing such files a contextual menu selection via Automator. I made an Automator action called 'Show/hide unix files', and told Automator to save the file as a plug-in for the Finder.

robg wasn't on hand to test this one. Solution Three got the lowest possible rating, despite over 24,000 views.

Solution Four

Solution Four is mentioned in the comments to Solution Three; it involves downloading an Apple Installer package with the following settings ready to kick in when you double-click it.

<key>IFPkgFlagAuthorizationAction</key>
<string>RootAuthorization</string>
<key>IFPkgFlagRestartAction</key>
<string>RequiredLogout</string>


So much for Solution Four.

Solution Five

Back at Mac OS X Hints again. (A nice place to be.)

Solution Five comes just a few days ago. 20 July of this year. Submitted by 'colmiak' who writes:

There are many ways to show and hide the various hidden files and folders in Mac OS X. This one is an update to an older Automator workflow method. The previous method was to create a plug-in in Automator; now a pair of Services are used, so this hint only applies to Snow Leopard. Refer to the previous hint for usage in either Leopard or Tiger.

Solution Five gets only 1,800 views (presumably people are less and less interested in showing all files) but it does get a 4+ rating from 7 voters (0.3781739600216% of all viewers - rating hints isn't big there).

◾ Launch Automator and choose Service as your template. (Be careful in the next steps if you copy and paste the code that the apostrophes and quotes come through as plain text.)
◾ On the left side, use the search bar to find the 'Run Shell Script' action (it's in Utilities) and drag three instances of that action over to the right side.
◾ At the very top on the right where is says 'Service receives selected' choose 'files or folders' in 'Finder'.

And so forth. It reads like a Microsoft tutorial on how to remove a Windows virus. But crarko says it works.

Solution Six

Solution Six is mentioned in the comments to Solution Five.

Free Utility to do just this. No tinkering required:
http://gotoes.org/sales/ShowHiddenFilesMacOSX/

And, while we're at it, they also have a program to change the visibility of individual files:
http://gotoes.org/sales/ChangeFolderVisibilityMacOSX/

'ShowHiddenFilesMacOSX' is actually 'ShowAllFiles.app'. Here's what it looks like on disk.

13 items, 76868 bytes, 264 blocks, 36898 bytes in extended attributes.

ShowAllFiles.app/Contents
ShowAllFiles.app/Contents/Info.plist
ShowAllFiles.app/Contents/MacOS
ShowAllFiles.app/Contents/MacOS/applet
ShowAllFiles.app/Contents/PkgInfo
ShowAllFiles.app/Contents/Resources
ShowAllFiles.app/Contents/Resources/applet.icns
ShowAllFiles.app/Contents/Resources/applet.rsrc
ShowAllFiles.app/Contents/Resources/description.rtfd
ShowAllFiles.app/Contents/Resources/description.rtfd/TXT.rtf
ShowAllFiles.app/Contents/Resources/Scripts
ShowAllFiles.app/Contents/Resources/Scripts/main.scpt
ShowAllFiles.app/Icon

Obviously there are things in that bundle that no one wants. That's also 172 KB effective disk space.

How it works is eminently apparent.

00000000000001dd defaults write com.apple.finder AppleShowAllFiles
0000000000000238 killall Finder


'ChangeFolderVisibilityMacOSX' is 'ChangeVisibility.app'. Here's what it looks like on disk.

18 items, 246124 bytes, 552 blocks, 1364 bytes in extended attributes.

ChangeVisibility.app/Contents
ChangeVisibility.app/Contents/Info.plist
ChangeVisibility.app/Contents/MacOS
ChangeVisibility.app/Contents/MacOS/ChangeVisibility
ChangeVisibility.app/Contents/PkgInfo
ChangeVisibility.app/Contents/Resources
ChangeVisibility.app/Contents/Resources/English.lproj
ChangeVisibility.app/Contents/Resources/English.lproj/InfoPlist.strings
ChangeVisibility.app/Contents/Resources/English.lproj/MainMenu.nib
ChangeVisibility.app/Contents/Resources/English.lproj/MainMenu.nib/classes.nib
ChangeVisibility.app/Contents/Resources/English.lproj/MainMenu.nib/data.dependency
ChangeVisibility.app/Contents/Resources/English.lproj/MainMenu.nib/info.nib
ChangeVisibility.app/Contents/Resources/English.lproj/MainMenu.nib/objects.nib
ChangeVisibility.app/Contents/Resources/eye.icns
ChangeVisibility.app/Contents/Resources/GetFileInfo
ChangeVisibility.app/Contents/Resources/Scripts
ChangeVisibility.app/Contents/Resources/Scripts/ChangeVisibility.scpt
ChangeVisibility.app/Contents/Resources/SetFile

There are a lot more things here that no one wants. That's also 276.5 KB effective disk space.

This one does something else entirely and it does it in a rather peculiar way.

00000000000002ab Do you want to change the visibility of a file or folder?
0000000000000451 GetFileInfo
0000000000000473 | grep attributes
00000000000004e1 SetFile' -a V
0000000000000506 SetFile' -a v
000000000000051f killall Finder


This one uses an ancient interface into chflags() to access an Apple addition to the other more 'Unix-like' file flags. So it's not really about showing all files but still and all: Brian Kernighan's third golden rule is 'let the other guy do all the hard work' and he certainly didn't have IP theft in mind. Scroll through the full listing for this app above and you'll find the following.

ChangeVisibility.app/Contents/Resources/GetFileInfo
ChangeVisibility.app/Contents/Resources/SetFile

Those files are the property of Apple and they're not meant for redistribution.

3. Transfer. You may not rent, lease, lend, sell, redistribute or sublicense the Developer Software.

Solution Seven

Solution Seven is also mentioned in the comments to Solution Five.

It's mailware, but works eben [sic] without:

Download here

InVisibles 1.5 ('InVisibles 1.5 engl. ƒ' to be more precise) is a treat. All 332 KB of it.

23 items, 113705 bytes, 480 blocks, 93274 bytes in extended attributes.

InVisibles 1.5 engl. ƒ/.DS_Store
InVisibles 1.5 engl. ƒ/Extra
InVisibles 1.5 engl. ƒ/Extra/.DS_Store
InVisibles 1.5 engl. ƒ/Extra/InVisibles Menue.scpt
InVisibles 1.5 engl. ƒ/Extra/Read me.rtfd
InVisibles 1.5 engl. ƒ/Extra/Read me.rtfd/Bild 1.png
InVisibles 1.5 engl. ƒ/Extra/Read me.rtfd/TXT.rtf
InVisibles 1.5 engl. ƒ/Icon
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Info.plist
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/MacOS
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/MacOS/applet
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/PkgInfo
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/applet.icns
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/applet.rsrc
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/description.rtfd
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/description.rtfd/TXT.rtf
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/Scripts
InVisibles 1.5 engl. ƒ/InVisibles 1.5 engl.app/Contents/Resources/Scripts/main.scpt
InVisibles 1.5 engl. ƒ/Read me!.rtf
InVisibles 1.5 engl. ƒ/Tice' Weblog • Daily junk for friends.webloc

And guess what - same old thing.

0000000000000163 "Invisible" files change to:
000000000000024a defaults write com.apple.finder AppleShowAllFiles 1
0000000000000289 mycmd
00000000000002d8 moment please...
00000000000002e9 .. Prefs will be updated!
0000000000000452 Macintosh HD:System:Library:CoreServices:Finder.app
0000000000000521 /usr/bin/open -a "Finder" 
0000000000000546 Start Finder via click on Dock icon!
0000000000000596 defaults write com.apple.finder AppleShowAllFiles 0
00000000000005d4 moment please...
00000000000005e5 .. Prefs will be updated!
0000000000000615 /usr/bin/open -a "Finder" 
000000000000063a Start Finder via click on Dock icon!
0000000000000677 register
00000000000007e4 register
000000000000080e seriennummer
000000000000081c Seriennummer
0000000000000830 knopf
0000000000000837 Knopf
00000000000008d4 Library
00000000000008e6 Preferences
00000000000009b3 InVisibles is mailware:
0000000000000b3e Thank you for registering InVisibles.
0000000000000c0f Thank you for registering InVisibles.
0000000000000c4c Wrong Serialnumber!

One question: what happens if someone renames their root drive from 'Macintosh HD'? Oh well.

Solution Eight

New product, free product, limited supply, act now. Operators are standing by.

Truly enough is enough.

But SuperShowAllFiles is no joke: it works. And it uses the 'clean' method of getting Finder to exit in an orderly fashion. So all your pretty icons turn up in the same place in all your pretty folders (also in the same place) on restart.

Yes it's egregious - but so are all the other nonsense solutions above.

Solution Nine

The easiest and the simplest. Granted that straightforward solutions aren't for everybody but still and all.

Click the image above if you've never heard of that thing before.

And if none of the above appeal to you (although at least one should) then you could consider dumping Finder and getting a real file manager.

See Also
Rixstep ACP: Xfile: Test Drive Xfile
Rixstep ACP: CLIX: Learn How to Fish
Rixstep ACP: Xfile: The Standard Setter
Rixstep Download: SuperShowAllFiles.zip

About | ACP | Buy | Forum | Industry Watch | Learning Curve | Search | Twitter | Xnews
Copyright © Rixstep. All rights reserved.