Skip to content

How To Make and Run Batch Files In Terminal In Mac OSX

January 11, 2010

I use batch files sometimes when I was using Windows because it saves a lot of time when you need to run a batch of commands frequently. With a batch file, you save all the commands into one file, and just run the batch file, instead of your gazillion commands individually.

I was facing the same situation in Mac OSX when I realised that I didn’t know how to create a batch file in Mac OSX. Turns out it’s pretty easy. Mac OSX is unix-based, so I could use the unix equivalent (which is called a script too). What you need to do is to put all the commands you want into a plain text document, and save it with a name (without the .txt extension preferably, but that really doesn’t matter…it just looks more right that way).

In Windows, that’s all that you need to do, but for the Mac, you’ll need to make sure that you edit your batch file’s permissions so it is executable. So for example, if your batch file is named batchfile, one way to change its permissions is to right-click on it, click on “Show Info”, and then change the permissions under “Permissions” to show 755.

What 755 does is to give permissions of 7 to you, 5 to your user group, and 5 to everyone else. With a permission of 7, you can write to the file and execute it. With a permission of 5, you can execute the file but not write to it.

Another way is for you to change permissions of the file is to go into Terminal, and enter this command that changes its permissions. You’ll need to be in the directory that batchscript is in for the following command to work (or you’ll need to specify its full path):

chmod 755 batchscript

Now to run your batch file, you just need to either specify the full path to the batch file, or if you are already in the directory where it is located, you can type:

./batchscript

Note that you have to put the “./” in front of your filename, in order to tell Terminal to look for the file in the current directory.

And with that, you’ll have a working batch file in Mac OSX!

Related Posts.