Find your Public IP

Type in the following command on your Mac Terminal to see the Public IP of your system.

dig TXT +short

This is useful when you’re trying to get public IP for a server. For your own laptop, you can hit and it would give you your Public IP address.


Executing psql from command prompt on Mac OSX after installing PostgreSQL

I installed PostgreSQL but wasn’t able to execute psql on the command prompt to execute queries. I had to add the PostgreSQL path to the PATH variable in order to do that. It’s best to append the path in the bash_profile so it’s ready and available every time the shell loads. Add the following lines (depending on the location of your PostgreSQL version)

# Modify PATH
export PATH=$PATH:/Library/PostgreSQL/9.5/bin

Mac – Update openssl

I had a hard time updating openssl on my Mac OSX. Here’s what I did to update the libraries:

Install and upate brew

brew update
brew install openssl
brew link --force openssl

openssl version

If one of the bad versions come up (1.0.1a-f), you can figure out which version of openssl you’re using, this way:

which openssl

Often this is from /usr/bin. To make sure you get the updated version, drop a symlink into /usr/local/bin to point to the updated openssl, like this:

ln -s /usr/local/Cellar/openssl/1.0.1g/bin/openssl /usr/local/bin/openssl

Note: You may have to exit and start the Terminal session to see the new changes.

As an alternative to that final step, some people replace the openssl in /usr/bin with a symlink to /usr/local/Cellar/openssl/1.0.1g/bin/openssl (or whatever your version is):

mv /usr/bin/openssl /usr/bin/openssl_OLD
ln -s /usr/local/Cellar/openssl/1.0.1g/bin/openssl /usr/bin/openssl

But this is known to cause problems with some more recent versions of OSX. Better to just insert a new symlink into /usr/local/bin, which should take precedence on your path over /usr/bin.

Original article:

Setting up my Mac

Since I’m starting fresh on my Mac, I thought it’ll be useful to list down all my useful software and the download links so I can be more productive next time I have to redo this process.



Copy/Move top 100 files to a directory

I have a large number of files that I need to separate in parts and put in a different directory. I used to copy the files individually and paste them over in a directory. Then I found this cool trick to get the top 100 files from the current directory and copy/move them over to a different one. You can substitute mv/cp based on what you need.

find . -name "*.jpg" -maxdepth 1 -type f | head -100 |  xargs -I{} mv {} Color-Part1/

Keep repeating this command by replacing the name of the directory at the end. Trust me, saves a lot of time.