Awesome
Command Line Text Processing
Learn about various commands available for common and exotic text processing needs. Examples have been tested on GNU/Linux - there'd be syntax/feature variations with other distributions, consult their respective man
pages for details.
:warning: :warning: I'm no longer actively working on this repo. Instead, I've converted existing chapters into ebooks (see ebook section below for links), available under the same license. These ebooks are better formatted, updated for newer versions of the software, includes exercises, solutions, etc. Since all the chapters have been converted, I'm archiving this repo.
<br>
Ebooks
Individual online ebooks with better formatting, explanations, exercises, solutions, etc:
- CLI text processing with GNU grep and ripgrep
- CLI text processing with GNU sed
- CLI text processing with GNU awk
- Ruby One-Liners Guide
- Perl One-Liners Guide
- CLI text processing with GNU Coreutils
- Linux Command Line Computing
See https://learnbyexample.github.io/books/ for links to PDF/EPUB versions and other ebooks.
<br>Chapters
As mentioned earlier, I'm no longer actively working on these chapters:
- Cat, Less, Tail and Head
- cat, less, tail, head, Text Editors
- GNU grep
- GNU sed
- GNU awk
- Perl the swiss knife
- Ruby one liners
- Sorting stuff
- sort, uniq, comm, shuf
- Restructure text
- paste, column, pr, fold
- Whats the difference
- cmp, diff
- Wheres my file
- File attributes
- wc, du, df, touch, file
- Miscellaneous
- cut, tr, basename, dirname, xargs, seq
Webinar recordings
Recorded couple of videos based on content in the chapters, not sure if I'll do more:
See also my short videos on Linux command line tips
<br>Exercises
Check out exercises directory to solve practice questions on grep
, right from the command line itself.
See also my TUI-apps repo for interactive CLI text processing exercises.
<br>Contributing
- Please open an issue for typos or bugs
- As this repo is no longer actively worked upon, please do not submit pull requests
- Share the repo with friends/colleagues, on social media, etc to help reach other learners
- In case you need to reach me, mail me at
echo 'yrneaolrknzcyr.arg@tznvy.pbz' | tr 'a-z' 'n-za-m'
or send a DM via twitter
Acknowledgements
- unix.stackexchange and stackoverflow - for getting answers to pertinent questions as well as sharpening skills by understanding and answering questions
- Forums like Linux users, /r/commandline/, /r/linux/, /r/ruby/, news.ycombinator, devup and others for valuable feedback (especially spotting mistakes) and encouragement
- See wikipedia entry 'Roses Are Red' for
poem.txt
used as sample text input file
License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License