04-02-2019
Quote:
Originally Posted by
kshitij
Hi Don
Thanks a lot for your reply! I am using Linux RH-6 .
If we need to match with the second last "/" and delete the lines from the second last "/
then how do we need to tweak the script. ?
Thanks
Kshitij
Hi Kshitij,
From your description above I have no idea which lines it is that you want to delete. In the first problem you presented in this thread you only wanted to remove characters from the end of each line. Now that you want to delete some lines, we need a clear specification of which lines you want to delete.
If you just want to remove another "/" character and the non-"/" characters from the ends of every line, I have already shown you how to do that. Why don't you show me how you would modify the code I suggested to delete the last two "/" characters and the non-"/" characters following them from the end of every line. Assuming that every line has at least two "/" characters (as in your example), there are at least three easy ways to do that.
If some lines might only contain one "/", you need to decide whether you want those lines to be changed at all (removing only the last "/" and the characters following it) or if you don't want to make any changes to a line if there aren't at least two "/" characters on the line. The way to do what you want to do depends on what it is that you want to do and on the data that you will be processing.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
On Unix, it is easy to get those lines that match a pattern, by
grep pattern file
or those lines that do not, by
grep -v pattern file
but I am editing a file on Windows with Ultraedit.
Ultraedit support regular expression based search and replace.
I can delete all the lines that match a... (1 Reply)
Discussion started by: JumboGeng
1 Replies
2. Shell Programming and Scripting
Hi all,
I have the following data in a file x.csv:
> ,this is some text here
> ,,,,,,,,,,,,,,,,2006/11/16,0.23
> ,,,,,,,,,,,,,,,,2006/12/16,0.88
< ,,,,,,,,,,,,,,,,this shouldnt be deleted
I need to use SED to match anything with a > in the line and delete that line, can someone help... (7 Replies)
Discussion started by: not4google
7 Replies
3. Shell Programming and Scripting
Hi there,
I need help about using sed. Iam using sed to delete and print lines that match the port number as listed in sedfile. I am using -d and -p command for delete match port and print them respectively. However, the output is not synchonize where the total deleted lines is not similar with... (3 Replies)
Discussion started by: new_buddy
3 Replies
4. Shell Programming and Scripting
hi,
i am parsing a file, in that searching for lines those contains "$threadNo.Received message:" , if that line contains the required fields write them into a separate file other wise ignore them.
i am using the following code,but it is printing all the lines , i dont want to rpint , please help... (3 Replies)
Discussion started by: Satyak
3 Replies
5. Shell Programming and Scripting
Hi,
Here is my pattern
CREATE USER LZ
IDENTIFIED BY VALUES 'A0144280ESD70'
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP1 PROFILE DEVELOPER_D_1
ACCOUNT UNLOCK
/
The Sed command must look for the Line that contains TEMPORARY TABLESPACE and replace the immediate word... (4 Replies)
Discussion started by: rajan_san
4 Replies
6. Shell Programming and Scripting
Hi All,
I have almost 1000+ files and I want to search specific pattern. Looking forwarded your input.
Search for: word1.word2 (Which procedure contain this word, I need procedure name in output.
Expected output:
procedure test1
procedure test2
procedure test3
procedure test4
... (7 Replies)
Discussion started by: susau_79
7 Replies
7. Shell Programming and Scripting
i have a file like below. how can i printout the digits followed by the pattern -bwout and -bwin. say i run the script by entering line number 145 (the fourth line), then the o/p should be like
5000000 1024000
8 test1 -ipprot erp -ppsout 500 -ppsin 500 -bwout 300000 -bwin 300000 -statsdevice... (7 Replies)
Discussion started by: sb245
7 Replies
8. Shell Programming and Scripting
I have a shell script which I made with the help of this forum
#!/bin/sh
RuleNum=$1
cat bw_rules | sed 's/^.*-x //' | awk -v var=$RuleNum '$1==var {for(i=1;i<=NF;i++) {if($i=="-bwout") print $(i+3),$(i+1)}}'
Basically I have a pages after pages of bandwidth rules and the script gives... (0 Replies)
Discussion started by: sb245
0 Replies
9. Shell Programming and Scripting
Hi
Im trying to do the following in sed. I want to delete any blank line at the start of a file until it matches a pattern and then stops. for example:
Input
output:
I have got it to work within a range of two patterns with the following:
sed '/1/,/pattern/{/^]*$/d}'
The... (2 Replies)
Discussion started by: duonut
2 Replies
10. Shell Programming and Scripting
Ive used this snippet of code on a solaris box thousands of times.
But it isnt working on the new linux box
sed -n '/interface LoopBack0/{N;/ ip address /p;}' *.conf
its driving me nuts !!
Is there something Im missing ? (7 Replies)
Discussion started by: popeye
7 Replies
paste(1) General Commands Manual paste(1)
Name
paste - merge file data
Syntax
paste file1 file2...
paste -dlist file1 file2...
paste -s [-dlist] file1 file2...
Description
In the first two forms, concatenates corresponding lines of the given input files file1, file2, etc. It treats each file as a column or
columns of a table and pastes them together horizontally (parallel merging).
In the last form, the command combines subsequent lines of the input file (serial merging).
In all cases, lines are glued together with the tab character, or with characters from an optionally specified list. Output is to the
standard output, so it can be used as the start of a pipe, or as a filter, if - is used in place of a file name.
Options
- Used in place of any file name, to read a line from the standard input. (There is no prompting).
-dlist Replaces characters of all but last file with nontabs characters (default tab). One or more characters immediately following -d
replace the default tab as the line concatenation character. The list is used circularly, i. e. when exhausted, it is reused. In
parallel merging (i. e. no -s option), the lines from the last file are always terminated with a new-line character, not from the
list. The list may contain the special escape sequences:
(new-line), (tab), \ (backslash), and (empty string, not a null
character). Quoting may be necessary, if characters have special meaning to the shell (for example, to get one backslash, use
-d"\\" ).
Without this option, the new-line characters of each but the last file (or last line in case of the -s option) are replaced by a
tab character. This option allows replacing the tab character by one or more alternate characters (see below).
-s Merges subsequent lines rather than one from each input file. Use tab for concatenation, unless a list is specified with -d
option. Regardless of the list, the very last character of the file is forced to be a new-line.
Examples
ls | paste -d" " -
list directory in one column
ls | paste - - - -
list directory in four columns
paste -s -d"
" file
combine pairs of lines into lines
Diagnostics
line too long
Output lines are restricted to 511 characters.
too many files
Except for -s option, no more than 12 input files may be specified.
See Also
cut(1), grep(1), pr(1)
paste(1)