Show/Hide Hidden Files on Mac OS X Yosemite

Category: Misc
Show/Hide Hidden Files on Mac OS X Yosemite

As a web developer I need to show or hide hidden files like .htaccess on daily basis. After some Googling I managed to find the command how to show/hide the hidden files or folders. But still I had to Google for it every time I needed it and search again for the command to hide those hidden files a few minutes later.

Finally I discovered the great article by Ian Lunn, followed the instructions and created aliases in Terminal and all I need to do now is type showFiles and hideFiles whenever I need to show/hide OS X’s hidden files. So I decided to share that knowledge with you too.

Show/Hide Hidden Files the Long Way

The long way to show hidden Mac OS X files is as follows:

1. Open Terminal located in Finder > Applications > Utilities

2. In Terminal, paste the following:
defaults write com.apple.finder AppleShowAllFiles YES

3. Press return

4. Hold the ‘Option/alt’ key, then right click on the Finder icon in the dock and click Relaunch

This will show all hidden files. To hide them again, follow the same steps but replace the Terminal command with:

defaults write com.apple.finder AppleShowAllFiles NO

It’s not the longest set of instructions or the biggest command to commit to memory but if you’re doing this a lot, it’s worth spending a few minutes now to save yourself a lot more time in the future.

 

Show/Hide Hidden Files using Terminal Aliases

A Terminal alias is a name or shortcut for one or multiple commands. Using an easy to remember alias, we can turn the above four step process into just one.

An alias can be made temporarily (just for the use of one terminal session) or permanently. As we want this to be a shortcut used now and in the future, let’s make it permanent:

  1. Open Terminal found in Finder > Applications > Utilities
  2. In Terminal, paste the following: sudo nano ~/.bash_profile
  3. Enter your Mac’s administration password if required, then hit return
  4. At the bottom of the open .bash_profile file, paste the following:
    alias showFiles='defaults write com.apple.finder AppleShowAllFiles YES; killall Finder /System/Library/CoreServices/Finder.app'
  5. Below that, paste the following:
    alias hideFiles='defaults write com.apple.finder AppleShowAllFiles NO; killall Finder /System/Library/CoreServices/Finder.app'
  6. Press ctrl + O and hit return to save the file
  7. Press ctrl + X to exit the file and return to the command line
  8. In Terminal, paste the following: source ~/.bash_profile to refresh your profile and make the aliases available

Now when you want to show hidden files, all you need type in Terminal is showFiles, then hideFiles when you want to hide them.

If you want to modify the behavior or alias names, let’s take a closer look at the commands you just added:

alias showFiles='defaults write com.apple.finder AppleShowAllFiles YES; killall Finder /System/Library/CoreServices/Finder.app'

alias - tells Terminal we’re adding a new alias.

showFiles - is the name of the alias. Change this to what you wish.

We then give the alias two commands. The first being:

defaults write com.apple.finder AppleShowAllFiles YES;

This is the command to show hidden files and is ended with a semi-colon ; so we can then use the second command:

killall Finder /System/Library/CoreServices/Finder.app

This will relaunch the Finder (to replicate the step of holding the ‘Option/alt’ key then right clicking the Finder icon in the dock).

Conclusion

With the aliases set up, all you need do in the future is type showFiles and hideFiles to show and hide Mac OS X’s hidden files respectively.

Aliases can be used to speed up your interaction with the Terminal. Set up an alias for navigating to your most used directories, to commit to a GitHub repo and so on.