Sponsored Content
Top Forums UNIX for Dummies Questions & Answers Regular Expression - Replace if x contains y except if... Post 302294082 by ce9888 on Wednesday 4th of March 2009 11:51:51 AM
Old 03-04-2009
There is probably a more efficient way to di this...

Code:
while read line
do
     echo $line | grep -i red > /dev/null
     if [ $? -eq 0 ]
     then
         echo $line | grep -i green > /dev/null
         if [ $? -eq 0 ]
         then
              echo $line >> new_file
         fi
     else
         echo $line >> new_file
     fi
done < input_file

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Regular Expression + Aritmetical Expression

Is it possible to combine a regular expression with a aritmetical expression? For example, taking a 8-numbers caracter sequece and casting each output of a grep, comparing to a constant. THX! (2 Replies)
Discussion started by: Z0mby
2 Replies

2. Shell Programming and Scripting

regular expression

Hi all, My log file is like 19:40:22 INFO :Total time taken to Service External Request---15ms 19:40:22 INFO : External service failed with status KO 19:40:22 FATAL: External service failed with status KO 19:40:22 DEBUG : Batch started with 19:40:22 ERROR: Member: dmidecode.x86_64... (1 Reply)
Discussion started by: subin_bala
1 Replies

3. Linux

Regular expression to extract "y" from "abc/x.y.z" .... i need regular expression

Regular expression to extract "y" from "abc/x.y.z" (2 Replies)
Discussion started by: rag84dec
2 Replies

4. UNIX for Dummies Questions & Answers

replace words in sed using regular expression

hi, I need to replace all these lines from my text file 123end 234end 324end 234end 989end 258end 924end At the moment I know how to replace "end". But I want to replace the numbers before end as well. How can I do this ? sed s/end/newWord/ myfile.txt newFile.txt thanks (3 Replies)
Discussion started by: aneuryzma
3 Replies

5. UNIX for Advanced & Expert Users

Regular Expression

Hi, How can I use a regular expression that will find only errors of ORA-00600 that does not contain 12333 if the first brackets: example text: ORA-02999 : test message, ignore me ORA-00600: dddd sss ORA-00600: dddd sss sas ORA-00600: internal error code, arguments: , , , , , ... (4 Replies)
Discussion started by: ynixon
4 Replies

6. Shell Programming and Scripting

Integer expression expected: with regular expression

CA_RELEASE has a value of 6. I need to check if that this is a numeric value. if not error. source $CA_VERSION_DATA if * ] then echo "CA_RELESE $CA_RELEASE is invalid" exit -1 fi + source /etc/ncgl/ca_version_data ++ CA_PRODUCT_ID=samxts ++ CA_RELEASE=6 ++ CA_WEEK_NO=7 ++... (3 Replies)
Discussion started by: ketkee1985
3 Replies

7. Programming

Perl: How to read from a file, do regular expression and then replace the found regular expression

Hi all, How am I read a file, find the match regular expression and overwrite to the same files. open DESTINATION_FILE, "<tmptravl.dat" or die "tmptravl.dat"; open NEW_DESTINATION_FILE, ">new_tmptravl.dat" or die "new_tmptravl.dat"; while (<DESTINATION_FILE>) { # print... (1 Reply)
Discussion started by: jessy83
1 Replies

8. UNIX for Dummies Questions & Answers

regular expression help

\..\ {3\}$ which one of these does this match rs.ef$tt abc.ab abc.$$$$ abc I think its the 1st one what do you think? Thanks Please use code tags! (2 Replies)
Discussion started by: drew211
2 Replies

9. 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

10. Shell Programming and Scripting

perl : regular expression to replace the strings

There are 2 strings as below. $str1 = "41148,,,,,,,,,,,,,,,,,,,,,,,,"; $date = "TUE 08-28-2012"; The output should be as below $str1 = "TUE 08-28-2012,,,,,,,,,,,,,,,,,,,,,,,,"; Could anyone please help with the perl regular expression or any other alternative? (3 Replies)
Discussion started by: giridhar276
3 Replies
INIT(8) 						      System Manager's Manual							   INIT(8)

NAME
init - grandparent of all processes DESCRIPTION
The first program started by Minix is init. The actions performed by init can be summarized by this pseudo shell program: # Open 0, 1, 2. exec </dev/null >/dev/log 2>&1 # Run the system initialization script. sh /etc/rc $bootopts >/etc/utmp echo reboot >>/usr/adm/wtmp while :; do # Wait for a process to exit, but don't always block. wait # Record logout. (Not in this dumb way, of course.) if "pid is in my tables" $pid then echo "logout $pid" >/etc/utmp echo "logout $pid" >>/usr/adm/wtmp fi # Start a new session. while read line type getty init do if idle $line then $init ... <$tty >$tty $getty <$tty >$tty 2>&1 & pid=$! "add pid to tables" $pid echo "login $line $pid" >/etc/utmp echo "login $line $pid" >>/usr/adm/wtmp fi done < /dev/ttytab done The first action of init is to run /etc/rc to initialize the system as described in boot(8). Init then enters its main loop where it waits for processes to exit, and starts processes on each enabled terminal line. The file /etc/ttytab contains a list of terminal devices, their terminal types, the program to execute on them to allow one to login (usually getty(8)), and the program to execute first to initialize the line (usually stty(1)). These fields may be left out to indicate that a line is disabled or that initialization is not necessary. The commands are searched using the path /sbin:/bin:/usr/sbin:/usr/bin. Init accepts several signals that must be sent to process id 1. (It is the first process, so natually its process id is 1.) The signals are: SIGHUP When receiving a hangup signal, init will forget about errors and rescan ttytab for processes to execute. Init normally rescans ttytab each time it feels the need to respawn a process, so the hangup signal is only needed if a line has been shut down, or after a terminate signal. Note that after turning a line off you will have to kill the process running on that line manually, init doesn't do that for you. SIGTERM Normally sent by programs that halt or reboot Minix. Causes init to stop spawning new processes. SIGABRT Sent by the keyboard driver when the CTRL-ALT-DEL key combination is typed. Causes init to run the shutdown command. A second abort signal makes init halt the system directly with a system call. The keyboard driver halts the system, without a sync, after the third CTRL-ALT-DEL. Minix vs. Minix-vmd There are a few differences between standard Minix and Minix-vmd on how init is run. The /etc/rc file is executed under standard Minix with input connected to /dev/console, but under Minix-vmd this is still /dev/null. This means that under Minix-vmd processes must be reconnected to /dev/console with the intr program if they need user interaction. Minix-vmd passes the value of the bootopts boot variable to /etc/rc. Standard Minix does not. FILES
/etc/ttytab List of terminals devices. /etc/utmp List of currently logged in users. /usr/adm/wtmp Login/logout history. SEE ALSO
ttytab(5), utmp(5), getty(8), stty(1), boot(8). AUTHOR
Kees J. Bot (kjb@cs.vu.nl) INIT(8)
All times are GMT -4. The time now is 05:02 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy