5 ms·
How long were you involved with Linux before you knew everything in that list?
by skeltoac 13y ago
How long were you involved with Linux before you knew everything in that list?
- serf 13y agotwo or three years as a casual user. a seperate issue : if you're going to make lists like this, please don't include distribution specific commands (like yum or apt-get) on 'linux' cheatsheets. they belong on redhat or ubuntu cheatsheets, respectively. Similarly irritating : the use of distribution specific package names.
- colechristensen 13y agoA good list will mention the alternatives (even if it doesn't explain all of them), but still include them. There are a lot of tasks which one ought to be familiar with which aren't anywhere near cross platform, and keeping your list to very widely available tools will leave huge gaps in your knowledge and makes for rather short lists.
- chadillac 13y agoI'm willing to bet there isn't but a handful of people in this community that "knows everything on that list", remembering everything on that list is... well, unneeded? 9/10 times when I'm using a command that isn't part of my "daily list" I'll need to consult man pages and/or Google. I've used xargs hundreds of times, but depending on when I used it last, I can never remember if I need -0 or not, and is it $1 or {} or wait, no no, I'm using awk, so it's $1, and I need to changes something... is it needle, haystack, replacement or... hell, I'm not even sure if it's substr or just sub... errrr. Not to mention some of these are distro specific, in some you use service name start, in others it's /etc/init.d/service start. Some it's adduser, others it's useradd, etc. It's relative to the distro a lot of the times... are the files in /usr/opt/ or /opt/... or maybe they're in /usr/local/opt/... Also they list stuff like locate, but not updatedb. Not a single mention of dd or shred or /etc/resolv.conf or netcat (I fucking love netcat!) or unzip (far more likely to need to unzip an archive than add a user in your day to day life). We're not command libraries, we're duct tape mechanics. http://xkcd.com/1168/ http://xkcd.com/1168/ edit: if you're interested in learning more... I honestly can't recommend this book enough. http://www.amazon.com/Linux-System-Administration-Handbook-Edition/dp/0131480057 http://www.amazon.com/Linux-System-Administration-Handbook-E...
- colechristensen 13y agoI don't consider myself in any elite minority for it, but I feel I have strong familiarity with everything on that list. While maybe a bit of curating might be necessary, _every_ developer whose code comes anywhere near a Unix descendant should be just as familiar to be considered anything above 'junior'. Most teenagers are perfectly capable of this understanding. I find my job wearing a DevOps hat to be very often much more difficult than it ought to be because so many programmers clearly don't understand the OS layer they're running on (both when supporting internal developers at various places which I've called $work, and using OSS and commercial software in that role) There's no shame in running `man xargs` to get the syntax just right (we're not dictionaries) but general knowledge of what those tools are and how to use them are _essential_ to being a good developer... this is an essence too often neglected by universities and professionals.
- chadillac 13y agoI agree completely. My point was when I looked at the list the first thing that jumped out at me was dig... yeah, I know what dig is, what it's used for, but I just hadn't seen it in a while... that's how often I actually have to use it. There isn't a reason for me to really keep it in my mental dictionary of known commands because of it's overall utility to me. Likewise commiting logrotate flags to memory, pretty much useless, how often do you honestly have to run that by hand or use it in a day in day out situation. If you answer "often" to that, then we'll need to get you up to speed on more core components like crons and shell scripts. That was my point.
- jimmaswell 13y ago>There's no shame in running `man xargs` to get the syntax just right (we're not dictionaries) but general knowledge of what those tools are and how to use them are _essential_ to being a good developer... this is an essence too often neglected by universities and professionals. I don't really think so. You can get by fine developing a lot of things without knowing linux tools. They are helpful, though. What if you're working on Windows like a ton of devs do?
- 13y ago
- dredmorbius 13y agoWhile I find your question specious, there were about four commands I wasn't immediately familiar with there (some are somewhat distro / choice specific with other alternatives being present), and that's with 17 years professional experience. I'd run across the vast majority within my first year or two (and had been using others for years on Unix systems). That said: some of the commands I use most often are exceptionally basic. And in the case of others, I'm learning things all the time. Say, such as mplayer's constant-pitch video playback speed argument: http://redd.it/21qe7i http://redd.it/21qe7i