Difference between revisions of "Sed (editor)"

From wikieduonline
Jump to navigation Jump to search
 
(7 intermediate revisions by the same user not shown)
Line 7: Line 7:
  
 
   g - global  
 
   g - global  
  [[-i]]
+
  [[sed -i|-i]] -i[SUFFIX], --in-place[=SUFFIX] edit files in place (makes backup if SUFFIX supplied)
 
  [[sed -e|-e]]
 
  [[sed -e|-e]]
 +
 +
  -E, -r, --regexp-extended use extended regular expressions in the script (for portability use [[POSIX -E]]).
  
 
  [[brew install gnu-sed]]
 
  [[brew install gnu-sed]]
Line 43: Line 45:
 
* Delete characters before a pattern
 
* Delete characters before a pattern
 
  [[sed -e]] 's/....yourtext/ yourtext/g' file.txt
 
  [[sed -e]] 's/....yourtext/ yourtext/g' file.txt
 +
 +
* sed -Ei 's/^# deb-src /deb-src /' [[/etc/apt/sources.list]]
  
 
== Help ==
 
== Help ==
Line 55: Line 59:
 
* <code>cat your_file.txt | [[while read]] i; do echo "$(date) $i"; done</code>
 
* <code>cat your_file.txt | [[while read]] i; do echo "$(date) $i"; done</code>
 
* <code>[[sed -n]]</code>
 
* <code>[[sed -n]]</code>
* [[Chef: Editing a file]]
+
* [[Chef: Editing a file]]: <code>[[replace_or_add]]</code>
 
* [[Redirection]]: [[double redirection]]
 
* [[Redirection]]: [[double redirection]]
 
* [[file (Puppet)]]
 
* [[file (Puppet)]]
 
* [[prepend]]
 
* [[prepend]]
 
* [[kubectl patch]]
 
* [[kubectl patch]]
 +
* [[gsub]] [[gwak]]
 +
* <code>[[envsubst]]</code>
  
 
== See also ==
 
== See also ==

Latest revision as of 14:42, 4 April 2024

wikipedia:sed (1974) utility is using for text processing, such as strings replacements.

sed /xxx/yyy/g
  g - global 
-i  -i[SUFFIX], --in-place[=SUFFIX] edit files in place (makes backup if SUFFIX supplied)
-e
  -E, -r, --regexp-extended use extended regular expressions in the script (for portability use POSIX -E).
brew install gnu-sed


Sed Basic examples[edit]

  • Replace all occurrences of TEXT_STRING (/g)
sed -i s/OLD_TEXT_STRING/NEW_TEXT_STRING/g file.txt
sed -i s/^/TEST_TO_APPEND_AT_BEGINNIG/ file.txt
Append a space at the beginning of lines:
sed s/^./" "/
sed -i s/$/TEST_TO_APPEND_AT_END/ file.txt
  • Move N lines from text file to new file:
head -1000 input > output && sed -i '1,+999d' input [1]
  • Add at the beginning and end of a sentence:
    <code> and </code>
sed s/'^'/'\<code\>'/ | sed s/'$'/'\<\/code\>'/
sed s/^/" sed s/$/""/
  • Add * at the beginning of the line:
sed s/^/"*"/
sed s/' '//g
  • Delete characters before a pattern
sed -e 's/....yourtext/ yourtext/g' file.txt

Help[edit]

usage: sed script [-Ealn] [-i extension] [file ...]
      sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]

Related[edit]

See also[edit]

  • https://stackoverflow.com/a/801036
  • Advertising: