$ curl cheat.sh/
 cheat.sheets:sed 
# sed
# A stream editor. Used to perform basic text transformations

# Preview a file edit, via substitution.
sudo sed 's/Name=Xfce Session/Name=Xfce_Session/' FILE

# Replace the same string more than once per line (g flag)
sudo sed 's/Name=Xfce Session/Name=Xfce_Session/g' FILE

# Edit a file (adding -i flag), in-place; changes are made to the file(s).
sudo sed -i 's/Name=Xfce Session/Name=Xfce_Session/' FILE

# It can become necessary to escape special characters in your string.
sed -i 's/\/path\/to\/somewhere\//\/path\/to\/anotherplace\//' FILE

# Change your sed delimiter to a pipe to avoid escaping slashes.
sed -i 's|/path/to/somewhere/|/path/to/anotherplace/|' FILE

# Print 2nd line
sed -n '2p' FILE

# Print lines from 2 till 9
sed -n '2,9p' FILE

# Print lines starting from one having pattern "any" till line number 17
sed -n '/any/,17p' FILE

# Print lines starting from the beginning, quit after printing 3rd line
sed -n 'p;3q'

# Print and quit at 5th line
sed -n '5{p;q}' FILE

# Print lines starting from the one having pattern "strstart" till
# the line having pattern "strend"
sed -n '/strstart/,/strend/p' FILE

# Print the last line
sed -n '$p' FILE

# Replace tabs with 4 spaces (changes are written to file itself)
sed -i 's/\t/    /g' FILE

# Replace CRLF with LF (convert DOS/Windows line endings to Linux line endings)
sed -i  's/\r$//g' FILE

# Insert CR (carriage return) character before LF (line feed) character
# (Linux to DOS/Windows line endings conversion)
sed -i 's/$/\r/' FILE

# Remove trailing spaces (changes are written to file itself)
sed -i -E "s/\s+$//g" FILE

# Remove empty lines (changes are written to file itself)
sed -i -E "/^\s*$/d" FILE

# Anonymize original MAC address of an Ethernet device in ifconfig's output
# (match 6 pairs of hexadecimal numbers with an optional trailing ":")
ifconfig | sed -E "/ether/ s/([0-9a-f]{2}:{0,1}){6}/00:00:00:00:00:00/g"

# Rearrange order of %Y,%m,%d in `date`s output by matching groups of characters
date '+%Y-%m-%d' | sed -E "s/([0-9]{4})-([0-9]{2})-([0-9]{2})/\3-\2-\1/"

 cheat:sed 
# To replace all occurrences of "day" with "night" and write to stdout:
sed 's/day/night/g' <file>

# To replace all occurrences of "day" with "night" within <file>:
sed -i 's/day/night/g' <file>

# To replace all occurrences of "day" with "night" on stdin:
echo 'It is daytime' | sed 's/day/night/g'

# To remove leading spaces:
sed -i -r 's/^\s+//g' <file>

# To remove empty lines and print results to stdout:
sed '/^$/d' <file>

# To replace newlines in multiple lines:
sed ':a;N;$!ba;s/\n//g' <file>

# To insert a line before a matching pattern:
sed '/Once upon a time/i\Chapter 1'

# To add a line after a matching pattern:
sed '/happily ever after/a\The end.'

 tldr:sed 
# sed
# Edit text in a scriptable manner.
# See also: `awk`, `ed`.
# More information: <https://www.gnu.org/software/sed/manual/sed.html>.

# Replace all `apple` (basic regex) occurrences with `mango` (basic regex) in all input lines and print the result to `stdout`:
command | sed 's/apple/mango/g'

# Execute a specific script [f]ile and print the result to `stdout`:
command | sed -f path/to/script.sed

# Print just a first line to `stdout`:
command | sed -n '1p'

$
Follow @igor_chubin cheat.sh