TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: UNIX / Command Line tutorial for non-dummies

14 pointsby cruxover 16 years ago
Dear HN:<p>I've recently begun the process of hosting a website for a friend on mine. He'll just be running a wordpress install, but I'm giving him shell access and it would be nice if he was able to do basic php and css config himself if he needs to. That said, he has basically no UNIX experience. He's not a computing novice - he's currently working through a python programming course, for instance - but he's never used GNU/Linux, and whatever OS X experience he has is pretty superficial.<p>Do you all have any favorite tutorials to get him up to speed with sshing into GNU/Linux shell account running bash?

8 comments

motokoover 16 years ago
Please set up automatic system imaging for your server (e.g. Slicehost backups). The biggest barrier to learning is fear, so it helps him to know that he can press the "undo button" for the entire system at any time.<p>Other than that, I recommend letting him watch you use the terminal for 20 minutes to show him what proficient console use looks like. Advanced commands can be Googled later, and those "Unix Cheat Sheets" and cram tutorials were always simultaneously too complex and too simplistic for me to ever find useful. A working understanding would be more valuable.
nailerover 16 years ago
Make your own. Most Unix tutorials are particularly poor: as Unix attracts people who like technology (good thing), documentation is technology focused rather than task focused (bad thing).<p>* Logging in<p>* Making a test file. Making folders, copying, moving, removing files and folders.<p>* Show how the filesystem standard sorts files by type (binary, system binary, library, config files and service scripts) and by importance (required to recover the system in an emergency).<p>* Disk management - learning how volumes are attached to different folders (the filesystem table), and how volumes are named<p>* Installing software packages<p>* Starting, stopping, restarting, and checking the status of services<p>* Managing processes, using kill/killall and kill -KILL/killall -KILL
评论 #424287 未加载
评论 #424640 未加载
评论 #425156 未加载
评论 #425150 未加载
silentbicycleover 16 years ago
Note: This is more of a long-term-understanding answer than a quick-tutorial answer.<p>If he wants to understand Unix, <i>The Unix Programming Environment</i> by Kernighan and Pike is good (as parenthesis also noted). Also, say what you will about ESR, his <i>The Art of Unix Programming</i> (<a href="http://www.faqs.org/docs/artu/" rel="nofollow">http://www.faqs.org/docs/artu/</a>) explains the rationale behind most of the design ideas common in Unix, as well as various historical accidents that have influenced it. (It more about Unix's design/culture than programming, IMHO.) Plus, free online.<p>In particular, Unix will probably seem really awkward and limited until he really deeply gets the idea of doing things by composing relatively simple programs. There are a few other idioms fundamental to Unix, but that's probably the big one. (That would probably be easier if he had experience with Haskell, incidentally; Unix pipe IO can be very similar to monads.)<p>A general (perhaps very general) understanding of C will also go a <i>long</i> way, particularly with understanding the mindset behind the man pages.
bpraterover 16 years ago
Does he actually want to know more about the command line? If he's not, I wouldn't waste your effort. Some people aren't learners, they just want to accomplish a task.<p>If he is, definitely hook him up with a tutorial. I like the idea of letting him peek over your shoulder as you work.<p>Ultimately, there are very few commands you need to know to get started. This might work:<p><pre><code> - Move around the file system, echo the current path - List the files (in the various ways you can do this) - Create and edit a file (nano?) - Move and delete the file - Very brief overview of permissions - A primer on user directories and how to get back there easily </code></pre> I think that would get the average Joe enough tools to get going.
brianmover 16 years ago
Get a copy of <a href="http://www.amazon.com/Power-Tools-Third-Shelley-Powers/dp/0596003307/" rel="nofollow">http://www.amazon.com/Power-Tools-Third-Shelley-Powers/dp/05...</a> and experiment with interesting topics in it.
parenthesisover 16 years ago
The first few chapters of <i>The Unix Programming Environment</i> by Kernighan and Pike give an excellent introduction to basic Unix concepts and usage.
tebekaover 16 years ago
For bash have a look at <a href="http://tldp.org/LDP/abs/html/" rel="nofollow">http://tldp.org/LDP/abs/html/</a>
Kaizynover 16 years ago
Can anyone without shell/cli knowledge really be called an experienced user?
评论 #424289 未加载
评论 #424268 未加载
评论 #424505 未加载