Sponsored Content
Full Discussion: sed not working
Top Forums UNIX for Dummies Questions & Answers sed not working Post 302305149 by jda on Wednesday 8th of April 2009 05:29:51 AM
Old 04-08-2009
sed not working

Hi All,

Need some assistance n my script.
My file is LBXBC040904071724 and output should be LBX0904071704

tempFile=`echo $file | cut -c 4-7`
tempFile1=`echo $file | sed -e s/$tempFile//`
min=`expr substr $tempFile1 12 2`
cycleno=`expr substr $tempFile 3 2`
newFile=`echo $tempFile1 | sed -e /${min}/${cycleno}/`

here's the debug
+ echo LBXBC040904071724
+ cut -c 4-7
tempFile=BC04
+ + echo LBXBC040904071724
+ sed -e s/BC04//
tempFile1=LBX0904071724
+ + expr substr LBX0904071724 12 2
min=24
+ + expr substr BC04 3 2
cycleno=04
+ + echo LBX0904071724
+ sed -e /24/04/
sed: /24/04/ is not a recognized function.
newFile=

thanks much!

 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

sed not working

Hi, Iam doing the following using sed in a script , it is NOT working line_old= 3754|Yes|Yes line_new= 3754|Yes|Yes|Yes|Yes sed -e 's/$line_old/$line_new/' data.$$ > tmp.$$ mv tmp.$$ data.$$ Regards (5 Replies)
Discussion started by: baanprog
5 Replies

2. UNIX for Dummies Questions & Answers

Sed command not working

Hi, I have a test file as follows: 1G102119 ^ AA1179291 ^ 06oct2006 09:50:35^ 73.4^ 2^ 13^ 0^ 1493 1G102119 ^ AA1179291 ^ 06oct2006 09:49:45^ 73.4^ 2^ 13^ 0^ 1493 1G102119 ^ AA1179291 ^ 06oct2006 09:48:58^ 73.4^ 2^ 17^ 0^ 2 1G102119 ... (9 Replies)
Discussion started by: shashi_kiran_v
9 Replies

3. UNIX for Dummies Questions & Answers

sed not working

I am working on sed ... to replace a string... but not able to save. i need to repalce a string in httpd.conf in numerous directories. I am doing this find /opt/apache/*/conf/ -name httpd.conf -exec sed 's/LogLevel debug/LogLevel error/g' {} \; even tried with find... (4 Replies)
Discussion started by: logic0
4 Replies

4. Shell Programming and Scripting

sed not working for me.

Hi All, I need to modify ifcfg-eth0 file. The file currently contains the following: ONBOOT=no The desired output of the file is: ONBOOT=no DEVICE=eth0 BOOTPROTO=static IPADDR=234.235.34.56 NETMASK=255.255.255.0 GATEWAY=234.235.34.1 I know sed can help me in this, and... (4 Replies)
Discussion started by: nua7
4 Replies

5. Shell Programming and Scripting

sed -i not working in HP unix

hi i want to append the number in each file,but when i ran this command:- sed -i "1i 50" filename its giving error sed: illegal option -- i in HP unix but its working in linux. any advice !!!!!!!!! (6 Replies)
Discussion started by: abhigrkist
6 Replies

6. Shell Programming and Scripting

sed not working

hello, I am not able to redirect the output to the same file, where I am searching and replacing a pattern. D:\>cat abc.txt abc D:\>sed "s\abc\xyz\g" abc.txt > abc.txt D:\>cat abc.txt D:\> If I dont redirect the output to abc.txt, the command is working fine, even if I append the... (10 Replies)
Discussion started by: chetanpunekar
10 Replies

7. Shell Programming and Scripting

Sed not working the way i want it

I dont get something about sed If i have a text file inside contain a:a:a:a:a sed "s/"$title:$author:$price:$qtyAvailable:$qtySold"/"$Ntitle:$author:$price:$qtyAvailable:$qtySold"/" This work!! i can change a to be something else but If i have a text file inside contain Tom Tom:La... (2 Replies)
Discussion started by: GQiang
2 Replies

8. Shell Programming and Scripting

I sed its not working!

sed -i '' 's:'<string>/Users/testuser/Desktop/test.sh</string>':'something':g' log.txt The log file has this in <string>/Users/testuser/Desktop/test.sh</string> and I want to change it to something This code isn't working any ideas? Its doing my head in! (4 Replies)
Discussion started by: digitalviking
4 Replies

9. UNIX for Beginners Questions & Answers

sed command not working

Hello There - Iam trying to get this expdp running for oracle backup. And this is the code below: ### Run the export. ### Comment out any LOGFILE parameters in the .par file. if grep -i "Logfile" /<Path>$1_$2_$3.par; then ## Comment out any LOGFILE... (7 Replies)
Discussion started by: bkilaru
7 Replies

10. UNIX for Beginners Questions & Answers

Working with if and sed in UNIX

I have a text file containing multiple lines like password="&test."; password="xyz"; password='write some'; password="&testwrite."; today='o1jan2017'd; ----------------- ------------------ I don't want to replace the string value which are starting with & for Password variable... (3 Replies)
Discussion started by: harshabag
3 Replies
hexec(1)																  hexec(1)

NAME
hexec - a process execution hooking tool SYNOPSIS
hexec <OPTIONS> [expr] [cmd] [args...] DESCRIPTION
hexec is a tool to hook into process exececution calls (exec family of syscalls). You can define an expression that is executed against any hooked exec call. This expression may also contain a replacement exec call. OPTIONS SUMMARY
Here is a summary of the options to hexec. --help | -h Print a options/expr summary page --version | -v Print hexec version --log-out | -lo set output file for error and -print output OPTIONS
-h Print a options/expr summary page --help Print a options/expr summary page -lo Set the output file for error and -print output. This can be required if writing to stderr could cause malfunction because some processes read from stderr and expect a well defined output. EXPRESSIONS
The expression is executed against all process execution calls. If the expression returns true, the original call is skipped. <expr> -and <expr> <expr> -a <expr> <expr> <expr> Returns true if both expressions return true. If the left returns false, the right expression is never executed. <expr> -or <expr> <expr> -o <expr> Returns true if one of both expressions returns true. If the left returns true, the right expression is never executed. -path <pattern> Returns true if the path of the executable matches <pattern>. <pattern> is a bash compatible wild card pattern. -ipath <pattern> Same as -path, but case insensitive. -name <pattern> Returns true if the base name of the executable matches <pattern>. <pattern> is a bash compatible wild card pattern. -iname <pattern> Same as -name, but case insensitive. -contains <str> Returns true if the path of the executable containes the string <str>. -icontains <str> Same as -contains, but case insensitive. -print Print all arguments to the called process. Returns always true. -exec <cmd> [args...] ; Executes <cmd> with [args...] as arguments. This expression must be terminated with a semicolon. You can use argument placeholders in <cmd> and [args...] (see below). This expression always returns true. NOTE: Please be aware that you may need to escape or quote the terminating semicolon to not confuse your shell. -sh <script> Interprets <script> as a shell script by invoking /bin/sh with the arguments -c '<script>'. You can use argument placeholders inside <script>. Please note that -sh only expects a single argument and not a variable list of arguments (as -exec does). Using -sh is the same as using -exec sh -c <script>. PLACEHOLDERS FOR -exec EXPRESSION Every -exec expression can use placeholders in the argument list to obtain information from the original exec call. Each placeholder starts with { and ends with }. Use { if you want to use a { in your argument list. The placeholders are replaced when the -exec expression is evaluated. Placeholder types: {n} Will be replaced with the number of arguments in the original call. {<idx>} Will be replaced with the original argument at index <idx>. Example: {1} would give the first argument. You can prepend <idx> with placeholder flags. {} Will be replaced with all arguments from the original call. Each argument is seperated with a space. You can use placeholder flags. NOTE: The executable name is also considered as argument. This means that a call like "echo test" will result in two arguments, "echo" and "test". PLACEHOLDER FLAGS
s Every argument is inserted as single argument instead of concatenating all arguments. Consider the arguments 'a', 'b' and 'c'. Without s, -exec {} ; would result in -exec 'a b c' ;, which in many cases is not what you want. -exec {s} ; howewer would result in -exec 'a' 'b' 'c' ;. q Quote every single argument. e Escape all non alpha-numeric characters. This flag is very useful when using a "sh -c <...>" in the -exec expression. Examples -exec echo {} ; with the call 'a' 'b' 'c' results in: 'echo' 'a b c' -exec echo {q} ; with the call 'a' 'b' 'c' results in: 'echo' 'a' 'b' 'c' -exec sh -c 'echo {}; {}' ; with the call 'sh' '-c' 'gcc d.c >> log.txt' results in: 'sh' '-c' 'echo sh -c gcc d.c >> log.txt; sh -c gcc d.c >> log.txt' Please note that this will not do what you may expect, as the >> is handled wrong in this case. -exec sh -c 'echo {e}; {}' ; with the call 'sh' '-c' 'gcc d.c >> log.txt' results in: 'sh' '-c' 'echo sh -c gcc d.c >> log.txt; sh -c gcc d.c >> log.txt' CHANGES TO PROCESSES
hexec will add some environment variables to the hooked processes. These are (may not be complete): LD_PRELOAD hexec adds libhexec-hook.so to the list of preloaded libraries. HEXEC_EXPR_SHM Contains the name of the internal shared memory object. HEXEC_LOG_FD Contains the file descriptor for error and -print output. Please do never modify these environment variables. Also take care when you use these variables, because the name and content of the vari- ables may change in the future. EXAMPLES
hexec -name 'gcc' -exec ccache {s} ; make Calls make, which will then call gcc several times. The executable name of each hooked process execution is tested against the file pattern "gcc" and "ccache {s}" is called each time a match is found. '{s}' will be replaced with the original (the hooked) call. In this example, a call to "gcc -o test.o test.c" would be replaced with "ccache gcc -o test.o test.c" HOW IT WORKS
TODO BUGS
I'm sure there are alot...it's still beta :) AUTHOR
hexec was written by Alexander Block http://blocksoftware.net/ If you wish to report a problem or make a suggestion then please email ablock@blocksoftware.net hexec is released under the GNU General Public License version 2 or later. Please see the file COPYING for license details. November 2008 hexec(1)
All times are GMT -4. The time now is 11:18 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy