I want to redirect every multiline pattern in a new file using awk
---------- Post updated at 07:10 PM ---------- Previous update was at 07:05 PM ----------
I'm using the following command
awk '/start pattern/,/end pattern/' file_to_search > file_to_redirect
it's working but it is only extracting first pattern not the every multiline pattern
I'd say your startPat/endPat pai is good ONLY for the first 'block'.
Any leading/trailing spaces/tabs/etc...
Make sure it works for the others....
I have a file that will sometimes contain a pattern. The pattern is this:
W/D FRM CHK 00
I want to find any lines with this pattern, delete those lines, and also delete the line above and the line below. (1 Reply)
This is my first post, please be nice. I have tried to google and read different tutorials.
The task at hand is:
Input file input.txt (example)
abc123defhij-E-1234jslo
456ujs-W-abXjklp
From this file the task is to grep the -E- and -W- strings that are unique and write a new file... (5 Replies)
Hello
I am looking to have a script that performs some tasks for find and replace and inserts a line as well. I have done some programming 10 years ago, so it is causing me a little grief.
File consists of 2500 records. I will show you a sample consisting of two records below and what needs... (3 Replies)
hello I'm doing a unix program and i'm using many file csv.in each csv file the colums are separated by ";" I would like to know the position of a pattern. For example for a line yyyy, bbbb, cccc; ddddd;eeee. I will like for example by finding the position of the pattern "cccc" and the response is... (6 Replies)
Hi,
I have a file with text like this
.SET WIDTH 10000
.SET MAXERROR 1
insert into new_db
SELECT
*
FROM
some_db
;
+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+---------+-
.SET WIDTH 10000... (3 Replies)
How can I recursively find all files in a directory and print out the file and first line number of any text blocks that match the below cases?
This would seem to involve find, xargs, *grep, regex, etc.
In summary, I want to find so-called empty "try-catch blocks" that do not contain code... (0 Replies)
I have a file with data records separated by multiple equals signs, as below.
==========
RECORD 1
==========
RECORD 2
DATA LINE
==========
RECORD 3
==========
RECORD 4
DATA LINE
==========
RECORD 5
DATA LINE
==========
I need to filter out all data from this file where the... (2 Replies)
Hi,
I am able to get next line if it is matching a particular pattern. But i need a way to skip if next line also matches same pattern..
For example:
No Records
No Records
Records found
got it
Records found
Now i want to find 'Records found' after 'No Records' pattern matches..
... (5 Replies)
Hi,
I have a log file which has sessionids in it, each block in the log starts with a date entry, a block may be a single line or multiple lines. I need to sed (or awk) out the lines/blocks with that start with a date and include the session id.
The files are large at several Gb.
My... (3 Replies)
Dear Unix Forums,
I am hoping you can help me with a pattern matching problem.
What am I trying to do?
I want to replace multiple lines of a text file (that match a multi-line pattern) with a single line of text. These patterns can span several lines and do not always have the same number of... (10 Replies)
Discussion started by: thefang
10 Replies
LEARN ABOUT OPENSOLARIS
switch
switch(1T) Tcl Built-In Commands switch(1T)__________________________________________________________________________________________________________________________________________________NAME
switch - Evaluate one of several scripts, depending on a given value
SYNOPSIS
switch ?options? string pattern body ?pattern body ...?
switch ?options? string {pattern body ?pattern body ...?}
_________________________________________________________________DESCRIPTION
The switch command matches its string argument against each of the pattern arguments in order. As soon as it finds a pattern that matches
string it evaluates the following body argument by passing it recursively to the Tcl interpreter and returns the result of that evaluation.
If the last pattern argument is default then it matches anything. If no pattern argument matches string and no default is given, then the
switch command returns an empty string.
If the initial arguments to switch start with - then they are treated as options. The following options are currently supported:
-exact Use exact matching when comparing string to a pattern. This is the default.
-glob When matching string to the patterns, use glob-style matching (i.e. the same as implemented by the string match command).
-regexp When matching string to the patterns, use regular expression matching (as described in the re_syntax reference page).
-- Marks the end of options. The argument following this one will be treated as string even if it starts with a -.
Two syntaxes are provided for the pattern and body arguments. The first uses a separate argument for each of the patterns and commands;
this form is convenient if substitutions are desired on some of the patterns or commands. The second form places all of the patterns and
commands together into a single argument; the argument must have proper list structure, with the elements of the list being the patterns
and commands. The second form makes it easy to construct multi-line switch commands, since the braces around the whole list make it unnec-
essary to include a backslash at the end of each line. Since the pattern arguments are in braces in the second form, no command or vari-
able substitutions are performed on them; this makes the behavior of the second form different than the first form in some cases.
If a body is specified as ``-'' it means that the body for the next pattern should also be used as the body for this pattern (if the next
pattern also has a body of ``-'' then the body after that is used, and so on). This feature makes it possible to share a single body among
several patterns.
Beware of how you place comments in switch commands. Comments should only be placed inside the execution body of one of the patterns, and
not intermingled with the patterns.
EXAMPLES
The switch command can match against variables and not just literals, as shown here (the result is 2):
set foo "abc"
switch abc a - b {expr 1} $foo {expr 2} default {expr 3}
Using glob matching and the fall-through body is an alternative to writing regular expressions with alternations, as can be seen here (this
returns 1):
switch -glob aaab {
a*b -
b {expr 1}
a* {expr 2}
default {expr 3}
}
Whenever nothing matches, the default clause (which must be last) is taken. This example has a result of 3:
switch xyz {
a -
b {
# Correct Comment Placement
expr 1
}
c {
expr 2
}
default {
expr 3
}
}
SEE ALSO for(1T), if(1T), regexp(1T)KEYWORDS
switch, match, regular expression
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Availability | SUNWTcl |
+--------------------+-----------------+
|Interface Stability | Uncommitted |
+--------------------+-----------------+
NOTES
Source for Tcl is available on http://opensolaris.org.
Tcl 7.0 switch(1T)