Learn GNU sed with hundreds of examples and exercises. Visit https://youtu.be/nvKyKoeiZD8 for a short video about the book.
The book also includes exercises to test your understanding, which are presented together as a single file in this repo — Exercises.md.
For solutions to the exercises, see Exercise_solutions.md.
You can also use this interactive TUI app to practice some of the exercises from the book.
See Version_changes.md to keep track of changes made to the book.
- You can purchase the pdf/epub versions of the book using these links:
- You can also get the book as part of these bundles:
- All books bundle bundle from https://leanpub.com/b/learnbyexample-all-books or https://learnbyexample.gumroad.com/l/all-books
- Linux CLI Text Processing bundle from https://leanpub.com/b/linux-cli-text-processing or https://learnbyexample.gumroad.com/l/linux-cli-text-processing
- Magical one-liners bundle from https://leanpub.com/b/oneliners or https://learnbyexample.gumroad.com/l/oneliners
- Awesome Regex bundle from https://leanpub.com/b/regex or https://learnbyexample.gumroad.com/l/regex
- See https://learnbyexample.github.io/books/ for a list of other books
For a preview of the book, see sample chapters.
The book can also be viewed as a single markdown file in this repo. See my blogpost on generating pdf/epub from markdown using pandoc if you are interested in the ebook creation process.
For the web version of the book, visit https://learnbyexample.github.io/learn_gnused/
Thank you for choosing to write and share your knowledge. I read your books on CLI and sed - I think they are very comprehensive and very well explained. Keep up the great work
I would highly appreciate it if you'd let me know how you felt about this book. It could be anything from a simple thank you, pointing out a typo, mistakes in code snippets, which aspects of the book worked for you (or didn't!) and so on. Reader feedback is essential and especially so for self-published authors.
You can reach me via:
- Issue Manager: https://github.com/learnbyexample/learn_gnused/issues
- E-mail:
echo 'bGVhcm5ieWV4YW1wbGUubmV0QGdtYWlsLmNvbQo=' | base64 --decode
- Twitter: https://twitter.com/learn_byexample
- Preface
- Introduction
- In-place file editing
- Selective editing
- BRE/ERE Regular Expressions
- Flags
- Shell substitutions
- z, s and f command line options
- append, change, insert
- Adding content from file
- Control structures
- Processing lines bounded by distinct markers
- Gotchas and Tricks
- Further Reading
- GNU sed documentation — manual and examples
- stackoverflow and unix.stackexchange — for getting answers to pertinent questions on
sed
and related commands - tex.stackexchange — for help on pandoc and
tex
related questions - /r/commandline/, /r/linux4noobs/, /r/linuxquestions/ and /r/linux/ — helpful forums
- canva — cover image
- oxipng, pngquant and svgcleaner — optimizing images
- Warning and Info icons by Amada44 under public domain
- arifmahmudrana for spotting an ambiguous explanation
- mdBook — for web version of the book
- mdBook-pagetoc — for adding table of contents for each chapter
- minify-html — for minifying html files
Special thanks to all my friends and online acquaintances for their help, support and encouragement, especially during difficult times.
The book is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
The code snippets are licensed under MIT, see LICENSE file.