09-30-2019
RudiC:
Thanks for explanation. I still do not understand. man sed, only tell us 's/REGEXP/REPLACEMENT/FLAGS'.. In your command, 's#/#/text/#', text is REPLACEMENT. So 1st #, 2nd # and 3rd # stand for what? Wildcard for path name? Are they extended expressio or something else? I checked online and other books. I could not find answer. Can you please explain your command in details? Sorry for this. I want to really know the programming logic of your command.
Thanks in advance for your help.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
How can i add a character(#) in the beginning of every line in a .dat file (2 Replies)
Discussion started by: Cool Coder
2 Replies
2. UNIX for Dummies Questions & Answers
Hello all
How can I insert character to the end of text file without opening it in vi
Just simple one liner, can it be done?
Tnx (1 Reply)
Discussion started by: umen
1 Replies
3. Shell Programming and Scripting
Hi, excuse me for my poor english.
My problem is that:
I have a File
i want to add to each line of that file two strings: one at the beginning of the line, one at the ending.
string1="abcd"
string2="efgh"
i want $string1 content $string2 for each line.
Is that possible? (3 Replies)
Discussion started by: Linux-fueled
3 Replies
4. UNIX for Dummies Questions & Answers
Hi,
how could you go about removing words that begin with a certain character.
assuming that this character is '-' I currently have
echo "-hello" | sed s/-/""/
which replaces the leading dash with nothing but I want to remove the whole word, even if there are multiple words beginning... (3 Replies)
Discussion started by: skinnygav
3 Replies
5. Shell Programming and Scripting
I am very new to scripting and I know this request is simple but I am having no luck with it.
I have a file a.dat with the following data in it.
aa
bb
cc
dd
I need to run a script that will take each line of a.dat and put dsjc/ubin/ in front of each record, so the output looks like
... (2 Replies)
Discussion started by: jclanc8
2 Replies
6. Shell Programming and Scripting
hi I am trying to use SED to replace the line matching a pattern using the command
sed 'pattern c\
new line
' <file1 >file 2
I got two questions
1. how do I insert a blank space at the beginning of new line?
2. how do I use this command to execute multiple command using the -e... (5 Replies)
Discussion started by: piynik
5 Replies
7. Shell Programming and Scripting
Hi
I've been trying to search but couldn't quite get the answer I was looking for.
I have a a file that's like this
Time, 9/1/12
0:00, 1033
0:10, 1044
...
23:50, 1050
How do I make it so the file will be like this?
9/1/12, 0:00, 1033
9/1/12, 0:10, 1044
...
9/1/12, 23:50, 1050
I... (4 Replies)
Discussion started by: diesel88
4 Replies
8. Shell Programming and Scripting
Hi all,
I have a file like this
Q8N302
21-84
Q8N157
15-45
Q99996
167-201
202-251
269-318
I want to insert a character or space if the line starts with a number and I used the command
sed 's/^/#/'
But in the output file, when it inserts this character, first digit in the number is... (2 Replies)
Discussion started by: kaav06
2 Replies
9. Shell Programming and Scripting
Hi,,
I have the line below in a file:
$!VarSet |LFDSFN1| = '"E:\APC\Trials\20140705_427_Prototype Trial\Data\T4_20140705_Trial_Cycle_Data_13_T_Norm.txt" "VERSION=100 FILEEXT=\"*.txt\" FILEDESC=\"General Text\" "+""+"TITLE{SEARCH=NONE NAME=\"New Dataset\" LINE=1I want to write a script to change... (2 Replies)
Discussion started by: carlr
2 Replies
10. UNIX for Advanced & Expert Users
Hi, I have been trying to see how i can insert a column in the beginning to my html table
This is how it looks
Name Age
Sid 32
John 33
Mary 34
I want to insert a column Job before Name column, so it looks like
Job Name Age
IT Sid 32
Doctor... (3 Replies)
Discussion started by: sidnow
3 Replies
LEARN ABOUT DEBIAN
data::munge
Data::Munge(3pm) User Contributed Perl Documentation Data::Munge(3pm)
NAME
Data::Munge - various utility functions
SYNOPSIS
use Data::Munge;
my $re = list2re qw/foo bar baz/;
print byval { s/foo/bar/ } $text;
foo(mapval { chomp } @lines);
print replace('Apples are round, and apples are juicy.', qr/apples/i, 'oranges', 'g');
print replace('John Smith', qr/(w+)s+(w+)/, '$2, $1');
DESCRIPTION
This module defines a few generally useful utility functions. I got tired of redefining or working around them, so I wrote this module.
Functions
list2re LIST
Converts a list of strings to a regex that matches any of the strings. Especially useful in combination with "keys". Example:
my $re = list2re keys %hash;
$str =~ s/($re)/$hash{$1}/g;
byval BLOCK SCALAR
Takes a code block and a value, runs the block with $_ set to that value, and returns the final value of $_. The global value of $_ is
not affected. $_ isn't aliased to the input value either, so modifying $_ in the block will not affect the passed in value. Example:
foo(byval { s/!/?/g } $str);
# Calls foo() with the value of $str, but all '!' have been replaced by '?'.
# $str itself is not modified.
mapval BLOCK LIST
Works like a combination of "map" and "byval"; i.e. it behaves like "map", but $_ is a copy, not aliased to the current element, and
the return value is taken from $_ again (it ignores the value returned by the block). Example:
my @foo = mapval { chomp } @bar;
# @foo contains a copy of @bar where all elements have been chomp'd.
# This could also be written as chomp(my @foo = @bar); but that's not
# always possible.
submatches
Returns a list of the strings captured by the last successful pattern match. Normally you don't need this function because this is
exactly what "m//" returns in list context. However, "submatches" also works in other contexts such as the RHS of "s//.../e".
replace STRING, REGEX, REPLACEMENT, FLAG
replace STRING, REGEX, REPLACEMENT
A clone of javascript's "String.prototype.replace". It works almost the same as "byval { s/REGEX/REPLACEMENT/FLAG } STRING", but with a
few important differences. REGEX can be a string or a compiled "qr//" object. REPLACEMENT can be a string or a subroutine reference. If
it's a string, it can contain the following replacement patterns:
$$ Inserts a '$'.
$& Inserts the matched substring.
$` Inserts the substring preceding the match.
$' Inserts the substring following the match.
$N (where N is a digit)
Inserts the substring matched by the Nth capturing group.
${N} (where N is one or more digits)
Inserts the substring matched by the Nth capturing group.
Note that these aren't variables; they're character sequences interpreted by "replace".
If REPLACEMENT is a subroutine reference, it's called with the following arguments: First the matched substring (like $& above), then
the contents of the capture buffers (as returned by "submatches"), then the offset where the pattern matched (like "$-[0]", see "@-" in
perlvar), then the STRING. The return value will be inserted in place of the matched substring.
Normally only the first occurrence of REGEX is replaced. If FLAG is present, it must be 'g' and causes all occurrences to be replaced.
AUTHOR
Lukas Mai, "<l.mai at web.de>"
COPYRIGHT & LICENSE
Copyright 2009-2011 Lukas Mai.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as
published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.
perl v5.12.4 2011-08-03 Data::Munge(3pm)