- cross-posted to:
- technews@radiation.party
- cross-posted to:
- technews@radiation.party
Hello!
I am pleased to announce a new version of my “CLI text processing with GNU awk” ebook.
Learn the GNU awk
command step-by-step from beginner to advanced levels with hundreds of examples and exercises. This book will dive deep into field processing, show examples for filtering features, multiple file processing, how to construct solutions that depend on multiple records, how to compare records and fields between two or more files, how to identify duplicates while maintaining input order and so on. Regular Expressions will also be discussed in detail.
Links:
-
PDF/EPUB versions: https://learnbyexample.gumroad.com/l/gnu_awk (free till 31-August-2023)
-
Web version: https://learnbyexample.github.io/learn_gnuawk/
-
Markdown source, example files, etc: https://github.com/learnbyexample/learn_gnuawk
-
Interactive TUI app for exercises: https://github.com/learnbyexample/TUI-apps/blob/main/AwkExercises
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.
Happy learning :)
Thanks a lot for the feedback on Coreutils book! It’s so nice to hear that it helped in your thesis.
Regarding the ebook versions, I use
pandoc
to convert GitHub style Markdown to PDF/EPUB (wrote a blog post about my process here: https://learnbyexample.github.io/customizing-pandoc/). I had to search through stackexchange threads to customize the few things I could. I don’t know how to fix the kind of page breaks you mentioned. But, I’ll try to find a solution. Thanks again for the feedback :)I can’t imagine writing a whole book in Markdown. I couldn’t live without the ability to create my own macros (like I can in TeX). But I digress. Those bad page breaks could perhaps be solved by using the nowidow (or any similar) package. If that doesn’t work, manually put
\pagebreak
or\newpage
before the offending lines.Keep up the good work! :-)