03-26-2012
The way I see it is, this would remove all the tags from an xml file. But how this is achieved is, in all blank lines /^$/, don't do this s/<[^>]*>//g;p;
!{s/<[^>]*>//g;p;} --> Not of {substitute contents in <> including <> with null}
Which looks like an equivalent of sed 's/<[^>]*>//g' filename
It appears to be an overkill. I could be wrong. May be someone more experienced in sed would know why it is the way it is.
This User Gave Thanks to balajesuri For This Post:
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I've forgotten how to use a filename parameter
using sed inside a shell script. What I want to do is
replace a string inside a file with the name of
the file being processed.
I think this should work ..
for filename do
sed -e "s/xxx/$filename/" ...
...
done
Thanks!
Ps: ... (5 Replies)
Discussion started by: eadie
5 Replies
2. Shell Programming and Scripting
#! /bin/sed -nf
# Remove C and C++ comments, by Brian Hiles (brian_hiles@rocketmail.com)
# Sped up (and bugfixed to some extent) by Paolo Bonzini (bonzini@gnu.org)
# Works its way through the line, copying to hold space the text up to the
# first special character (/, ", '). The original... (1 Reply)
Discussion started by: Priyaranjan
1 Replies
3. Shell Programming and Scripting
Hi,
Can anyone pls explain me the below SED code in detail.
sed -e :a -e '$!N;s/\n//;ta' -e P -e D
When this code is executed with a file(has 1lac records), it is taking very long time to process.
So I wanted to modify this SED code with equivalant AWK code.
Thanks,
Sri (1 Reply)
Discussion started by: srilaxmi
1 Replies
4. Shell Programming and Scripting
I have a line that works for static filename
cat /directorypath/filename | sed '//d;//d' > filename
This approach when used in a script works well.
Then i need a list of filenames to give this line.
I can get the list into a file by filelist1='ls -m'
then use filelist2=${filelist1##ls... (4 Replies)
Discussion started by: ericonanson
4 Replies
5. Shell Programming and Scripting
mount -ps | tail -1 | awk '{print $1}' | sed -e 's%/$%%'
can you please explain this command mainly sed -e 's%/$%%' this.... (5 Replies)
Discussion started by: rsivasan
5 Replies
6. Shell Programming and Scripting
Thanks to this forum I have managed to work out a solution to my problem and actually understand most of it, but one thing is confusing me and I am sure someone here can explain.
I need to insert a piece of txt into a file. This txt is
awk '{ sub(/$/,"\r"); print }' $JCL_WBB50103_EFTOUT >... (2 Replies)
Discussion started by: hukcjv
2 Replies
7. Shell Programming and Scripting
can anyone please explain this code?
sed ':t /<VirtualHost/,/VirtualHost>/ { /VirtualHost>/!{ $!{ N; bt } }; /name/d; }' infile (4 Replies)
Discussion started by: jacky29
4 Replies
8. UNIX for Advanced & Expert Users
Can anyone explain the below sed oneliner?
sed -e ':a' -e '$q;N;11,$D;ba'
It works same as tail command.
I just want to know how it works.
Thanks
---------- Post updated at 11:42 PM ---------- Previous update was at 11:37 PM ----------
Moderators,
Can you please delete this thread?... (0 Replies)
Discussion started by: pandeesh
0 Replies
9. Shell Programming and Scripting
can anyone please explain this code?
sed ':a;N;$!ba;s/]\n//g' file
it replaces lines ending with "]" and concatenates with the next line so that
line1]
line2
becomes
line1line2
i don't understand this part: :a;N;$!ba;
I have noted that I can replace "a" with any letter:
... (1 Reply)
Discussion started by: locoroco
1 Replies
10. Shell Programming and Scripting
sed -e 's,*$,,'
Can someone explain the options in this command? (2 Replies)
Discussion started by: scj2012
2 Replies
LEARN ABOUT DEBIAN
plan9-grep
GREP(1) General Commands Manual GREP(1)
NAME
grep, g - search a file for a pattern
SYNOPSIS
grep [ option ... ] pattern [ file ... ]
g [ option ... ] pattern [ file ... ]
DESCRIPTION
Grep searches the input files (standard input default) for lines that match the pattern, a regular expression as defined in regexp(7) with
the addition of a newline character as an alternative (substitute for |) with lowest precedence. Normally, each line matching the pattern
is `selected', and each selected line is copied to the standard output. The options are
-c Print only a count of matching lines.
-h Do not print file name tags (headers) with output lines.
-e The following argument is taken as a pattern. This option makes it easy to specify patterns that might confuse argument parsing,
such as -n.
-i Ignore alphabetic case distinctions. The implementation folds into lower case all letters in the pattern and input before interpre-
tation. Matched lines are printed in their original form.
-l (ell) Print the names of files with selected lines; don't print the lines.
-L Print the names of files with no selected lines; the converse of -l.
-n Mark each printed line with its line number counted in its file.
-s Produce no output, but return status.
-v Reverse: print lines that do not match the pattern.
-f The pattern argument is the name of a file containing regular expressions one per line.
-b Don't buffer the output: write each output line as soon as it is discovered.
Output lines are tagged by file name when there is more than one input file. (To force this tagging, include /dev/null as a file name
argument.)
Care should be taken when using the shell metacharacters $*[^|()= and newline in pattern; it is safest to enclose the entire expression in
single quotes '...'. An expression starting with '*' will treat the rest of the expression as literal characters.
G invokes grep with -n and forces tagging of output lines by file name. If no files are listed, it searches all files matching
*.C *.b *.c *.h *.m *.cc *.java *.cgi *.pl *.py *.tex *.ms
SOURCE
/src/cmd/grep
/bin/g
SEE ALSO
ed(1), awk(1), sed(1), sam(1), regexp(7)
DIAGNOSTICS
Exit status is null if any lines are selected, or non-null when no lines are selected or an error occurs.
GREP(1)