Difference between revisions of "Linux/Unix:Find and Replace"

From wiki
Jump to: navigation, search
(sed)
 
(5 intermediate revisions by the same user not shown)
Line 3: Line 3:
 
==cat==
 
==cat==
  
==head tail==
+
==head & tail==
 +
 
 +
Show only top or bottom lines from a file
 +
;tail <num> filename
 +
:Show the last <num> lines from filename. 10 is the default
 +
;tail -f filename
 +
:Keep showing all files appended to the file
 +
;head -<num> filename
 +
:Show the first <num> lines from filename. 10 is the default
 +
;head -n -<num> filename
 +
:Show all except the last <num> lines from filename
 +
;tail +<num> filename
 +
:Show all lines from line <num> onwards
 +
 
 +
;tail +<lineno> filename|head -<num>
 +
:show <num> lines starting at <lineno>
  
 
==fold==
 
==fold==
  
 
==strings==
 
==strings==
 +
;strings filename
 +
:Try to show the file content in printable characters
  
 
==more less==
 
==more less==
Line 23: Line 40:
 
==grep==
 
==grep==
  
==sed==
+
==[[Sed]]==
 
+
See the [[Sed]] page.
 
;s/pattern/newstring/
 
;s/pattern/newstring/
 
:In each line replace first occurrence of pattern with newstring. /g at the end replaces all occurrences of pattern.
 
:In each line replace first occurrence of pattern with newstring. /g at the end replaces all occurrences of pattern.
Line 31: Line 48:
 
:Delete each line matching pattern.
 
:Delete each line matching pattern.
  
==awk==
+
==[[Awk]]==
 +
See the [[Awk]] page
  
 
==read==
 
==read==

Latest revision as of 08:39, 28 July 2020


cat

head & tail

Show only top or bottom lines from a file

tail <num> filename
Show the last <num> lines from filename. 10 is the default
tail -f filename
Keep showing all files appended to the file
head -<num> filename
Show the first <num> lines from filename. 10 is the default
head -n -<num> filename
Show all except the last <num> lines from filename
tail +<num> filename
Show all lines from line <num> onwards
tail +<lineno> filename|head -<num>
show <num> lines starting at <lineno>

fold

strings

strings filename
Try to show the file content in printable characters

more less

tr

tr "[:upper:]" "[:lower:]"
tr "[abc]" "[xyz]"
Transtlate, make all lowercase
replace all a's with y, all b's with y and all c's with z, works from stdin to stdout. All sort of translations can be done
tr -d <char>
Delete <char> from standard input

grep

Sed

See the Sed page.

s/pattern/newstring/
In each line replace first occurrence of pattern with newstring. /g at the end replaces all occurrences of pattern.
s/pattern/d
Delete each line matching pattern.

Awk

See the Awk page

read