sed - kdaisho/Blog GitHub Wiki
This line fetch a page from Moby Dick (license free), then replace (substitute) whitespace with a newline globally
For GNU/Linux
curl -s https://www.gutenberg.org/cache/epub/2701/pg2701.txt | sed -r 's/\s+/\n/g'
Flags
- -s: silently
- -r: interpret regular expressions as extended
- g: globally
s/\s+/\n/g
Explanation of - First Slash (/): Starts the pattern (what you want to search for).
\s+
: The pattern itself, which matches one or more whitespace characters.\s
: Matches any whitespace character (spaces, tabs, newlines, etc.).+
: Matches one or more occurrences of the preceding element\s
.
- Second Slash
/
: Ends the pattern and starts the replacement part. - Replacement
\n
: Specifies what to replace the pattern with (a newline character, in this case). - Third Slash
/
: Ends the replacement part.
Disclaimer: Above command works on GNU/Linux, not on BSD (macOS) 😞
For BSD
curl -s https://www.gutenberg.org/cache/epub/2701/pg2701.txt | sed -E 's/[:space:](/kdaisho/Blog/wiki/:space:)+/\'$'\n''/g' | grep -i whale | wc -l
Flags
- -E: interpret regular expressions as extended, same as -r with the command for GNU
- -l: (word count by) lines