From b737cc8ca5bb8ca5e07cd0151d678a7b4b10d5cb Mon Sep 17 00:00:00 2001 From: Johannes Stoelp Date: Wed, 1 May 2024 14:57:52 +0200 Subject: cli: add new group for cli foo tools --- src/tools/sed.md | 102 ------------------------------------------------------- 1 file changed, 102 deletions(-) delete mode 100644 src/tools/sed.md (limited to 'src/tools/sed.md') diff --git a/src/tools/sed.md b/src/tools/sed.md deleted file mode 100644 index 5b5f741..0000000 --- a/src/tools/sed.md +++ /dev/null @@ -1,102 +0,0 @@ -# sed(1) - -``` -sed [opts] [script] [file] - opts: - -i edit file in place - -i.bk edit file in place and create backup file - (with .bk suffix, can be specified differently) - --follow-symlinks - follow symlinks when editing in place - -e SCRIPT add SCRIPT to commands to be executed - (can be specified multiple times) - -f FILE add content of FILE to command to be executed - - --debug annotate program execution -``` - -## Examples -### Delete lines -```sh -# Delete two lines. -echo -e 'aa\nbb\ncc\ndd' | sed '1d;3d' -# bb -# dd - -# Delete last ($) line. -echo -e 'aa\nbb\ncc\ndd' | sed '$d' -# aa -# bb -# cc - -# Delete range of lines. -echo -e 'aa\nbb\ncc\ndd' | sed '1,3d' -# dd - -# Delete lines matching pattern. -echo -e 'aa\nbb\ncc\ndd' | sed '/bb/d' -# aa -# cc -# dd - -# Delete lines NOT matching pattern. -echo -e 'aa\nbb\ncc\ndd' | sed '/bb/!d' -# bb -``` - -### Insert lines -```sh -# Insert before line. -echo -e 'aa\nbb' | sed '2iABC' -# aa -# ABC -# bb - -# Insert after line. -echo -e 'aa\nbb' | sed '2aABC' -# aa -# bb -# ABC - -# Replace line. -echo -e 'aa\nbb' | sed '2cABC' -# aa -# ABC - -# Insert before pattern match. -echo -e 'aa\nbb' | sed '/bb/i 123' -# aa -# 123 -# bb -``` - -### Substitute lines -```sh -# Substitute by regex. -echo -e 'aafooaa\ncc' | sed 's/foo/MOOSE/' -# aaMOOSEaa -# cc -``` - -### Multiple scripts -```sh -echo -e 'foo\nbar' | sed -e 's/foo/FOO/' -e 's/FOO/BAR/' -# BAR -# bar -``` - -### Edit inplace through symlink -```sh -touch file -ln -s file link -ls -l link -# lrwxrwxrwx 1 johannst johannst 4 Feb 7 23:02 link -> file - -sed -i --follow-symlinks '1iabc' link -ls -l link -# lrwxrwxrwx 1 johannst johannst 4 Feb 7 23:02 link -> file - -sed -i '1iabc' link -ls -l link -# -rw-r--r-- 1 johannst johannst 0 Feb 7 23:02 link -``` -- cgit v1.2.3