I think one of the more tangible elements of tracking my progress while being a coding beginner is tracking how my habits have changed in the most basic ways as I use my computer. My experience interacting with the UI of my computer has completely shifted relatively quickly.
Previously, I, like many users, adhered to the user experience of manually clicking through folders, dragging and dropping documents and folders, right clicking for copying and deleting materials, double clicking to open files etc. etc. I stuck with the GUI.
I don't have to do this anymore
Everything has shifted after discovering the terminal and learning some very basic bash commands.
Instead of clicking through folders and scrolling manually, I navigate through my file structures just using change directory command and using the "ls" bash command to see what files I'm looking for:
Using the command line for navigation has really streamlined my workflow. I end up memorizing file and path names (or at least what they start with), and I spend far less time navigating and resizing menus.
The bash shell seems to be a really powerful tool with a lot of capabilities I've barely begun to scratch the surface of - after all, it's not just for navigation.
Lifehacker has a really beginner friendly guide on getting used to the command line.
Top comments (3)
ls
is good for finding stuff when you basically know where the target "stuff" is. If you want real power, look at thefind
command.find <DIR> -mtime -3
find <DIR> -mtime +<DAYS>
find <DIR> -type f -name "*.iso"
find <DIR> -type l
find <DIR> -perm /0002 -type f
The possibilities are near endless, especially once you add
find
's-exec
built-in function or pipeline yourfind
to other tools viaxargs
(e.g.,find <DIR> -type f | xargs grep -l <STRING>
will provide you a list of files that contain a given string).This is incredibly helpful! Thanks so much, I'm going to try these out ASAP!
"seems to be a really powerful tool"? A good half of your operating system is made of bash scripts! 😉