Reading Logs Made Easy With Bash.
Most of the web programmers would normally look into their applications/server error logs when they find issues, indeed it’s a pain when the log path is filled with directories, it’s sometimes annoying to do an ls -l and look for the latest directory and then cd it, a bit better case is when one tab_completes to change directories.
It would be very easy if we could cdn as in cd to the new dir ;)
So /me tired some silly script that would make my life easier, do add it to your ~/.bash.rc if we like it!
Here is the simple script to cdn :
cdn() {
local file latest;
for file in "${1:-.}"/*; do
[[ $file -nt $latest ]] && latest=$file
done;
printf '%s\n' "$latest"
[[ -d $latest ]] && cd $latest || tailf $latest
}
Usage: cdn [dir]
Digging into the code:
-
Get all the file and dirs in the specified path or consider ”.” as the default path
"${1:-.}"/* -
Using file and latest local vars : if
$file -nt $latestTrueif $file is newer than $latest (according to modification date). -
Finally check if it’s a dir or file, if file cd to it else tail it!
Hope this helps you guys, as it’s helping me, happy hacking!
About Hemanth HM
Hemanth HM is a Sr. Machine Learning Manager at PayPal, Google Developer Expert, TC39 delegate, FOSS advocate, and community leader with a passion for programming, AI, and open-source contributions.