Is there a way to use update command to locate files on OS X without having to run updatedb manually? I am considering using an alias for locate, as I find really inconvenient to have to run updatedb so often on mac.

Do you have any ideas or workarounds for this?
If you want locate to update more frequently, you have to modify the /System/Library/LaunchDaemons/com.apple.locate.plist file.

Specifically, you want to find the &lt;key&gt;StartCalendarInterval&lt;/key&gt; section and modify it to your specifications.  By default, locate is configured to update at 3:15am every Saturday (Sunday being the first day staring with 0).

&lt;key&gt;StartCalendarInterval&lt;/key&gt;
        &lt;dict&gt;
                &lt;key&gt;Hour&lt;/key&gt;
                &lt;integer&gt;3&lt;/integer&gt;
                &lt;key&gt;Minute&lt;/key&gt;
                &lt;integer&gt;15&lt;/integer&gt;
                &lt;key&gt;Weekday&lt;/key&gt;
                &lt;integer&gt;6&lt;/integer&gt;
        &lt;/dict&gt;


This works like cron, so you can specify an asterisk if you want, for example to run it every day.  Just change the 6 to and * and it will run at 3:15 every day.

An easier way to do this if you want to have it run at a set interval, for example, every 3 hours, you can use the StartInterval &lt;integer&gt; directive.  So, for your task to run every three hours insert the following directive into the plist file:

&lt;key StartInterval&lt;/key&gt;
   &lt;integer&gt;108000&lt;/integer&gt;


The integer is the number of seconds.  So, 60 seconds in a minute, 60 minutes in an hour and so forth.

Don't forget to remove the StartCalendarInterval directive.

Last, but definitely not least...make a backup copy of your .plist file before modifying it.  This way, if you hose things up, you have a good config to fall back on.

Note:  In order to make these changes work under OS X El Capitan, you need to disable OS X's System Integrity Protection (SIP).  You can ONLY do that by using csrutil in system Recovery Mode.

Boot Mac in System Recovery by holding Command+R.

Using Terminal, enter csrutil disable

You should see the following:
Successfully disabled System Integrity Protection.  Please restart machine for changes to take effect.

Reboot.

locate should now update per your schedule.

Disclaimer:  This is not a recommended procedure.  While this answer technically does address the question, it doesn't cover the "Why is this necessary to alter the updatedb schedule?" question.