Sponsored Content
Top Forums Shell Programming and Scripting sed: -e expression #1, char 21: unterminated `s' command Post 302542921 by avinthm on Friday 29th of July 2011 03:24:51 AM
Old 07-29-2011
sed: -e expression #1, char 21: unterminated `s' command

I have read many threads, but I still didn't find the right answer. May be i didn't find the right thread, though are so many threads for the same question.

Basically the situation is - find date in a file and replace it with another date. (its not homework, its part of lot of a big processing, so just extracting this piece of problem)
A file would contain records like this
john 2011/06/28 11:16:14
smith 2011/06/28 12:46:10
jessica 2011/06/28 06:16:40

I need to find john, replace the date on the same line with another date. I can find the required line, i am facing problem replacing the date. Here is the extracted code.

record="john 2011/06/28 11:16:14"
oldDate="2011/06/28 11:16:14"
newDate="2011/06/28 45:56:67"
echo $record | sed 's|'$oldDate'|'$newDate'|g'

Hence i get
sed: -e expression #1, char 21: unterminated `s' command

I got to know it has to do with the characters "\" & ":", but what exactly is the problem and what is the solution?
Can anybody explain me please?

---------- Post updated at 12:54 PM ---------- Previous update was at 12:48 PM ----------

Just figured out that I could replace the date and time separately, but not together. I think the space between the date and time is the problem.
Am I right?
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using SED command in a shell script: Unterminated address regex

Hi All, I am trying to use a sed command in a shell script in order to delete some lines in a file and I got the following error message. I don't understand why it is not working 'cause I have tried with simple quotes, then with double-quotes, and it is not working. sed: -e expression #1,... (7 Replies)
Discussion started by: Alpha3363
7 Replies

2. Shell Programming and Scripting

sed unterminated `s' command?

Hi there, I'm pretty new to this whole scripting thing. I've written myself something which takes my txt file of SMSes (the backup from the phone), and puts them into an email format, saving them as .eml files. I've tested and uploaded a batch to gmail, but because of threading issues, I've... (1 Reply)
Discussion started by: donnacha
1 Replies

3. UNIX for Dummies Questions & Answers

Grep char count & pipe to sed command

Hi I am having a 'grep' headache Here is the contents of my file: (PBZ,CP,(((ME,PBZ,BtM),ON),((ME,((PBZ,DG),(CW9,PG11))),CW9,TS2,RT1))) I would like to count out how many times 'PBZ' occurs and then place that number in the line above 3... (8 Replies)
Discussion started by: cavanac2
8 Replies

4. UNIX for Dummies Questions & Answers

sed error unterminated `s' command

I have list of data I have cut down to format: I am using sed command to remove the sed 's/ Returns error: sed: -e expression #1, char 5: unterminated `s' command Full code line is: cat textFile | cut -d ' ' -f 4 | cut ':' -f 1 | sed 's/ Thanks, Please use next time code tags... (2 Replies)
Discussion started by: maximus73
2 Replies

5. UNIX for Advanced & Expert Users

sed: -e expression #1, char 0: no previous regular expression

Hello All, I'm trying to extract the lines between two consecutive elements of an array from a file. My array looks like: problem_arr=(PRS111 PRS213 PRS234) j=0 while } ] do k=`expr $j + 1` sed -n "/${problem_arr}/,/${problem_arr}/p" problemid.txt ---some operation goes... (11 Replies)
Discussion started by: InduInduIndu
11 Replies

6. Shell Programming and Scripting

sed returns error "sed: -e expression #1, char 18: unterminated `s' command"

Hello All, I have something like below LDC100/rel/prod/libinactrl.a LAA2000/rel/prod/libinactrl.a I want to remove till first forward slash that is outputshould be as below rel/prod/libinactrl.a rel/prod/libinactrl.a How can I do that ??? (8 Replies)
Discussion started by: anand.shah
8 Replies

7. Shell Programming and Scripting

Sed: -e expression #1, char 2: extra characters after command

Greetings.. getting the error while execution of the script, correct where i am missing #!/bin/bash DATE=`date +%Y-%m-%d:::%H:%M` HOSTNAME=`hostname` TXT="/log/temp.txt" LOGPATH="/log1/commanlogs/" IP=`/sbin/ifconfig | grep -i inet| head -n1| awk '{print $2}'| awk -F : '{print $2}'`... (7 Replies)
Discussion started by: manju98458
7 Replies

8. Shell Programming and Scripting

Unterminated Regular Expression

It is ok when I send send one arguement to $TILL in the awk expression. first(){ TILL=$1 echo $TILL awk '/:\\/ {P=0} P {print $0 "<br>"} FNR==1{printf("File %s:<br>", FILENAME)} /'$TILL'\/ {P=1} ' ${dirlist } } echo "<table border = '1'>" echo '<tr><td> </td><td>' ;... (3 Replies)
Discussion started by: alvinoo
3 Replies

9. Shell Programming and Scripting

Sed: -e expression #1, char 16: unterminated address regex

I am trying to grep for a particular text (Do action on cell BL330) in a text file(sample.gz) which is searched in the content filtered by date+timestamp (2016-09-14 01:09:56,796 to 2016-09-15 04:10:29,719) on a remote machine and finally write the output into a output file on a local machine. ... (23 Replies)
Discussion started by: rbadveti
23 Replies

10. UNIX for Beginners Questions & Answers

Sed: -e expression #1, char 20: unterminated address regex

I am trying to add word in last of particular line. the same command syntex is running on prompt. but in bash script give error."sed: -e expression #1, char 20: unterminated address regex" Please help. for i in `cat servername`; do ssh -q -t root@$i sed -i '/simple_allow_groups =/s/$/,... (4 Replies)
Discussion started by: yash_message
4 Replies
DATEFUDGE(1)							      Debian							      DATEFUDGE(1)

NAME
datefudge - pretend the system time is different SYNOPSIS
datefudge [-s|--static] at_date program [arguments ...] DESCRIPTION
datefudge is a small utility that pretends that the system time is different by pre-loading a small library which modifies the time(2), gettimeofday(2) and clock_gettime(2) system calls. OPTIONS
--static, -s set date as a `static' one. The above mentioned system calls will always return the date passed as a parameter of the program regardless of time passing. See EXAMPLES below. --help, -h print short usage information and exit. --version, -v print version information and exit. EXAMPLES
Basic example: $ datefudge "2007-04-01 10:23" date -R Sun, 01 Apr 2007 10:23:00 +0200 Non-static vs. static example: $ datefudge "2007-04-01 10:23" sh -c "sleep 3; date -R" Sun, 01 Apr 2007 10:23:03 +0200 $ datefudge --static "2007-04-01 10:23" sh -c "sleep 3; date -R" Sun, 01 Apr 2007 10:23:00 +0200 AUTHOR
Written by Matthias Urlichs <smurf@noris.de>. Modified by Robert Luberda <robert@debian.org>. BUGS
There is no attempt to make this change undetectable by the program. In particular, file modification times are not modified. COPYRIGHT
Copyright (C) 2003 by Matthias Urlichs. Copyright (C) 2008-2011 by Robert Luberda. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You may redistribute copies of datefudge under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING. SEE ALSO
ld.so(1), time(2), gettimeofday(2), clock_gettime(2) datefudge 1.17 June 23th, 2011 DATEFUDGE(1)
All times are GMT -4. The time now is 05:32 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy