sed问题一句话解决
HANDY ONE-LINERS FOR SED (Unix stream editor) Mar. 23, 2001.compiled by Eric Pement <[email protected]> version 5.1 .Latest version of this file is usually at:
http://www.student.northpark.edu/pemente/sed/sed1line.txt
http://www.cornerstonemag.com/sed/sed1line.txt
This file is also available in Portuguese at:
http://www.lrv.ufsc.br/wmaker/sed_ptBR.html
FILE SPACING-----------------:
# double space a file
sed G
# double space a file which already has blank lines in it. Output file
# should contain no more than one blank line between lines of text.
sed \'/^$/d;G\'
# triple space a file
sed \'G;G\'
# undo double-spacing (assumes even-numbered lines are always blank)
sed \'n;d\'
NUMBERING:
# number each line of a file (simple left alignment). Using a tab (see
# note on \'\\t\' at end of file) instead of space will preserve margins.
sed = filename | sed \'N;s/\\n/\\t/\'
# number each line of a file (number on left, right-aligned)
sed = filename | sed \'N; s/^/ /; s/ *\\(.\\{6,\\}\\)\\n/\\1 /\'
# number each line of file, but only print numbers if line is not blank
sed \'/./=\' filename | sed \'/./N; s/\\n/ /\'
# count lines (emulates \"wc -l\")
sed -n \'$=\'
TEXT CONVERSION AND SUBST99vUTION:
# IN UNIX ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format
sed \'s/.$//\' # assumes that all lines end with CR/LF
sed \'s/^M$//\' # in bash/tcsh, press Ctrl-V then Ctrl-M
sed \'s/\\x0D$//\' # gsed 3.02.80, but top script is easier
# IN UNIX ENVIRONMENT: convert Unix newlines (LF) to DOS format
sed \"s/$/`echo -e \\\\\\r`/\" # command line under ksh
sed \'s/$\'\"/`echo \\\\\\r`/\" # command line under bash
sed \"s/$/`echo \\\\\\r`/\" # command line under zsh
sed \'s/$/\\r/\' # gsed 3.02.80
# IN DOS ENVIRONMENT: convert Unix newlines (LF) to DOS format
sed \"s/$//\" # method 1
sed -n p # method 2
# IN DOS ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format
# Cannot be done with DOS versions of sed. Use \"tr\" instead.
tr -d \\r <infile >outfile # GNU tr version 1.22 or higher
# delete leading whitespace (spaces, tabs) from front of each line
# aligns all text flush left
sed \'s/^[ \\t]*//\' # see note on \'\\t\' at end of file
# delete trailing whitespace (spaces, tabs) from end of each line
sed \'s/[ \\t]*$//\' # see note on \'\\t\' at end of file
# delete BOTH leading and trailing whitespace from each line
http://www.student.northpark.edu/pemente/sed/sed1line.txt
http://www.cornerstonemag.com/sed/sed1line.txt
This file is also available in Portuguese at:
http://www.lrv.ufsc.br/wmaker/sed_ptBR.html
FILE SPACING-----------------:
# double space a file
sed G
# double space a file which already has blank lines in it. Output file
# should contain no more than one blank line between lines of text.
sed \'/^$/d;G\'
# triple space a file
sed \'G;G\'
# undo double-spacing (assumes even-numbered lines are always blank)
sed \'n;d\'
NUMBERING:
# number each line of a file (simple left alignment). Using a tab (see
# note on \'\\t\' at end of file) instead of space will preserve margins.
sed = filename | sed \'N;s/\\n/\\t/\'
# number each line of a file (number on left, right-aligned)
sed = filename | sed \'N; s/^/ /; s/ *\\(.\\{6,\\}\\)\\n/\\1 /\'
# number each line of file, but only print numbers if line is not blank
sed \'/./=\' filename | sed \'/./N; s/\\n/ /\'
# count lines (emulates \"wc -l\")
sed -n \'$=\'
TEXT CONVERSION AND SUBST99vUTION:
# IN UNIX ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format
sed \'s/.$//\' # assumes that all lines end with CR/LF
sed \'s/^M$//\' # in bash/tcsh, press Ctrl-V then Ctrl-M
sed \'s/\\x0D$//\' # gsed 3.02.80, but top script is easier
# IN UNIX ENVIRONMENT: convert Unix newlines (LF) to DOS format
sed \"s/$/`echo -e \\\\\\r`/\" # command line under ksh
sed \'s/$\'\"/`echo \\\\\\r`/\" # command line under bash
sed \"s/$/`echo \\\\\\r`/\" # command line under zsh
sed \'s/$/\\r/\' # gsed 3.02.80
# IN DOS ENVIRONMENT: convert Unix newlines (LF) to DOS format
sed \"s/$//\" # method 1
sed -n p # method 2
# IN DOS ENVIRONMENT: convert DOS newlines (CR/LF) to Unix format
# Cannot be done with DOS versions of sed. Use \"tr\" instead.
tr -d \\r <infile >outfile # GNU tr version 1.22 or higher
# delete leading whitespace (spaces, tabs) from front of each line
# aligns all text flush left
sed \'s/^[ \\t]*//\' # see note on \'\\t\' at end of file
# delete trailing whitespace (spaces, tabs) from end of each line
sed \'s/[ \\t]*$//\' # see note on \'\\t\' at end of file
# delete BOTH leading and trailing whitespace from each line
顶(0)
踩(0)
上一篇:EXT3系统文件
下一篇:Linux备份策略研究
- 最新评论