The Geek Stuff

thegeekstuff.com · Personal blog · on HN since 2008

Sysadmin tutorial site with Unix and Linux command examples, bash guides, PuTTY tips, and Vim and C how-tos.

What HN saysHN links it for bash startup file explanations, though one commenter accused the author of copying other people's work.
47HN people shared it
18linked it in comments
53stories submitted
465story points
3 years agolast shared
2008people per year2026

Most-shared posts

  1. 1
  2. 2
  3. 3
    12 Add-Ons for PuTTY
    2 people · 30 points · first shared 2008 · 12 comments on HN
  4. 4
  5. 5
    12 Most Useful Google Chrome Browser Chrome:// Commands
    2 people · 4 points · first shared 2011 · discussion on HN
  6. 6
    The Ultimate Bash Array Tutorial with 15 Examples
    2 people · 2 points · first shared 2013 · 1 comments on HN
  7. 7
    How To Create ASCII Drawings in Vim Editor
    2 people · 1 points · first shared 2011 · discussion on HN
  8. 8
    C socket programming
    2 people · first shared 2014
  9. 9
  10. 10
    UNIX/Linux Sysadmin Tutorials
    1 people · 101 points · first shared 2010 · 13 comments on HN
  11. 11
    Interesting C Interview Questions and Answers
    1 people · 40 points · first shared 2012 · 37 comments on HN
  12. 12
    Linux Find Command Examples
    1 people · 27 points · first shared 2009 · 8 comments on HN
  13. 13
    8 Practical Linux Netcat NC Command Examples
    1 people · 4 points · first shared 2012 · discussion on HN
  14. 14
  15. 15

What HN people wrote when they linked it

gricardo99 · 2020-01-27
A great time saver for me was simply setting up better bash history and search capabilities[1]. I wrote a wrapper function, sbh (search bash history) that allows me to input date strings like "2 months ago", or "last week", which narrows the search. Linux 'date' function with --date string arg is pretty powerful[2]. 1 - https://spin.atomicobject.com/2016/05/28/log-bash-history/ 2 - https://www.thegeekstuff.com/2013/05/date-command-examples/
nadams · 2015-07-02
http://tehsausage.com/ptypes/doc/inet.examples.html vs http://www.boost.org/doc/libs/1_35_0/doc/html/boost_asio/tutorial/tutd… I know a lot of people would criticize the practices/styles used in ptypes - but I've yet to see another C++ library that is as easy to use, easy to read, AND most importantly cross platform. Hell even raw sockets in C is easier to use and understand than boost [1]. This is one of my favorite comments on reddit [2]. [1] http://www.thegeekstuff.com/2011/12/c-socket-programming/ [2] http://www.reddit.com/r/programming/comments/197dn1/introduction_to_c_…
MattLaroche · 2011-09-10
I find your straight copy-and-pasting of other people's work deplorable and I'm looking forward to your banishment from Hacker News. I know you're now ending your articles with a "source" - but why create your own articles instead of just linking to theirs? Ref: http://www.thegeekstuff.com/2009/01/12-amazing-and-essential-linux-boo…
ianbishop · 2012-04-10
I'm doing this now! I've got a linode box running arch. I configured it with all my dev needs. I'm currently in university and I spend a good amount of time at school, bouncing between labs and then also working from home. Right now the process is simply: ssh [email protected] tmux attach Up comes a familiar |- split console with vim running in a window, a terminal at the root of whatever project I'm working on and the server output of that project below it. If I have to leave suddenly, Ctrl+A+D and walk away. It'll be there when you log in next time. It also has huge advantages if you're working remotely with teams or just want to launch stuff. I have nginx already configured and running. When I need to launch a new project: 1) Go to the Linode DNS Manager and setup a new subdomain 2) Go to /srv/http and git clone my project 3) Edit my nginx.conf, reboot nginx and done. Some stuff worth checking out: * https://github.com/thoughtbot/dotfiles * http://www.thegeekstuff.com/2009/04/ctags-taglist-vi-vim-editor-as-sou… Edit: formatting
bobbyi · 2023-11-27
lsof is also good for seeing what files a process is using https://www.thegeekstuff.com/2012/08/lsof-command-examples/
flutetornado · 2020-02-18
I like to use the vim plugin DrawIt for ascii diagrams: https://www.thegeekstuff.com/2009/12/how-to-create-ascii-drawings-in-v… https://github.com/vim-scripts/DrawIt Pretty easy to create comments for code that need a drawing for clear expositions.
oblio · 2017-09-26
My bad, I was actually talking about a very common tar idiom which is almost an automatism for me: tar cvf/czvf/cjvf archive files (or -cvf/-czvf/-cjvf). I don't think I've ever seen anyone actually using tar by going: tar -c files -f archive Online tutorials seem to also use my form: http://www.thegeekstuff.com/2010/04/unix-tar-command-examples/ Either way, bad form, I'm glad they fixed it :)
informatimago · 2016-08-18
Of course. You don't have to use image-based systems to program in Smalltalk: you can also write unix Smalltalk programs, using gst (GNU Smalltalk). cf. eg. http://www.thegeekstuff.com/2009/10/smalltalk-hello-world-example-how-…
JoelHobson · 2014-06-29
Keep in mind that a lot of the keyboard features we take for granted weren't always present on early terminals. Navigating is a lot harder if you don't have, say, arrow keys. In that case, a separate mode makes a lot of sense for getting around (no arrow keys? Just map hjkl to them in navigation mode). Plus the same command can do different things depending on mode, so there are less distinct patterns of keypresses to memorize. Yes, you could do everything as a series of chords (like in emacs), but I don't think it's necessarily superior. Here's a list of some navigation mode commands. You can probably come up with reasonable ways to do them with only the keyboard & none of the alphanumeric or punctuation keys used alone, but would that be any easier? http://www.thegeekstuff.com/2009/03/8-essential-vim-editor-navigation-…
bdevine · 2013-10-18
If you're not aware of it, wget[1] allows you to save pages, whole sites, file types, etc. [1] http://www.thegeekstuff.com/2009/09/the-ultimate-wget-download-guide-w…
ereckers · 2013-08-07
I've used Putty Connection Manager for tabbed management of multiple Putty windows for a few years now. Here's an older article about it: http://www.thegeekstuff.com/2009/03/putty-extreme-makeover-using-putty… Unfortunately the URL for the download is down at the moment. I know, inspiring, but here it is: http://puttycm.free.fr/ It can be found on the Putty "links" page under "Multiple connection" here (along with some other options): http://www.chiark.greenend.org.uk/~sgtatham/putty/links.html I used to use SecureCRT until I got tired of their weird format for private keys (not sure if that's still an issue since I stopped using it a few years ago). Anyways, for what I was looking for Putty Connection Manager worked fine. Open many connections and cycle through the tabs with CTRL+TAB.
swatkat · 2013-07-01
I use Putty Connection Manager, which has a pretty good tabbed interface. http://www.thegeekstuff.com/2009/03/putty-extreme-makeover-using-putty…
pathy · 2013-07-01
Alternatives to PuTTY linked in the thread so far: https://puttytray.goeswhere.com/ https://code.google.com/p/futty/ https://code.google.com/p/superputty/ http://kitty.9bis.net/ http://www.thegeekstuff.com/2009/03/putty-extreme-makeover-using-putty… Which one is the best? I currently use Putty Tray, for no real reason except that someone linked it to me awhile back and it is, imo, better than vanilla PuTTY. But how does it compare to the alternatives? Edit: added more!
manaskarekar · 2012-08-16
Here's another one with more information on pointers in C. http://www.thegeekstuff.com/2012/01/advanced-c-pointers/
eshyong · 2014-04-06
Hi, I'm interested in learning low level programming too! I've been taking classes, reading tutorials about programming, and starting projects on my own. It really depends on what kind of projects you want to work on. Some of the major types of projects include compilers, OS-level projects (drivers, kernel, etc.), networking (server/client), and graphics. You'll probably want to learn C and/or Assembly, probably x86 but I've found ARM to be fun. (and Raspberry Pi is built on it!) - Compilers: I'm taking the Stanford course on Coursera right now. It just started two weeks ago so you can still catch up. Here's the link: https://class.coursera.org/compilers-004 Here's some literature on compilers/interpreters/JIT (Just In Time compilation): http://www.stephendiehl.com/llvm/ (I've heard good things about LLVM!) http://blog.reverberate.org/2012/12/hello-jit-world-joy-of-simple-jits… (Just saw this today) Tutorial on building a Lisp in C, from two days ago: http://www.buildyourownlisp.com/ - Operating Systems: Definitely check out MIT's open courseware on xv6! It's an implementation of Unix version 6. The course includes a git project that you can clone and play with yourself, as well as some labs. Here's the link: http://pdos.csail.mit.edu/6.828/2012/index.html OSDev wiki had some resources too: wiki.osdev.org If you have a Raspberry Pi or are patient enough to try to emulate the hardware, here are some tutorials on ARM assembly for RasPi:…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close