mirror of
https://gitea.com/mcereda/oam.git
synced 2026-02-09 05:44:23 +00:00
42 lines
2.1 KiB
Markdown
42 lines
2.1 KiB
Markdown
# SED
|
|
|
|
## TL;DR
|
|
|
|
```sh
|
|
# Delete lines matching "OAM" from a file.
|
|
# Overwrite the source file with the changes.
|
|
sed '/OAM/d' -i .bash_history
|
|
|
|
# Show changed fstab entries.
|
|
# Don't save the changes.
|
|
sed /etc/fstab \
|
|
-e "s|#.*\s*/boot\s*.*|/dev/sda1 /boot vfat defaults 0 0|" \
|
|
-e "s|#.*\s*ext4\s*.*|/dev/sda2 / btrfs compress-force=zstd 0 0|" \
|
|
-e '/#.*\s*swap\s*.*/d'
|
|
```
|
|
|
|
## Character classes and bracket expressions
|
|
|
|
| Class | Description |
|
|
| ----- | ----------- |
|
|
| `[[:alnum:]]` | alphanumeric characters `[[:alpha:]]` and `[[:digit:]]`; this is the same as `[0-9A-Za-z]` in the `C` locale and ASCII character |
|
|
| `[[:alpha:]]` | alphabetic characters `[[:lower:]]` and `[[:upper:]]`; this is the same as `[A-Za-z]` in the `C` locale and ASCII character encoding |
|
|
| `[[:blank:]]` | blank characters `space` and `tab` |
|
|
| `[[:cntrl:]]` | control characters; in ASCII these characters have octal codes 000 through 037 and 177 (DEL), in other character sets these are the equivalent characters, if any |
|
|
| `[[:digit:]]` | digits `0` to `9` |
|
|
| `[[:graph:]]` | graphical characters `[[:alnum:]]` and `[[:punct:]]` |
|
|
| `[[:lower:]]` | lower-case letters `a` to `z` in the `C` locale and ASCII character encoding |
|
|
| `[[:print:]]` | printable characters `[[:alnum:]]`, `[[:punct:]]` and `space` |
|
|
| `[[:punct:]]` | punctuation characters `!`, `"`, `#`, `$`, `%`, `&`, `'`, `(`, `)`, `*`, `+`, `,`, `-`, `.`, `/`, `:`, `;`, `<`, `=`, `>`, `?`, `@`, `[`, `\`, `]`, `^`, `_`, `` ` ``, `{`, `\|`, `}` and `~` in the `C` locale and ASCII character encoding |
|
|
| `[[:space:]]` | space characters `tab`, `newline`, `vertical tab`, `form feed`, `carriage return` and `space` in the `C` locale |
|
|
| `[[:upper:]]` | upper-case letters `A` to `Z` in the `C` locale and ASCII character encoding |
|
|
| `[[:xdigit:]]` | hexadecimal digits `0` to `9`, `A` to `F` and `a` to `f` |
|
|
|
|
## Further readings
|
|
|
|
- [GNU SED Online Tester]
|
|
- [Character Classes and Bracket Expressions]
|
|
|
|
[character classes and bracket expressions]: https://www.gnu.org/software/sed/manual/html_node/Character-Classes-and-Bracket-Expressions.html
|
|
[gnu sed online tester]: https://sed.js.org/
|