简体   繁体   中英

getting the line in shell script

Im trying to get all " RESP:0,sucess;" in line- Enter command:RESP:0,sucess;- here is my codes.how will I take it?

**for i in {2..4}
do 
   date  
   CMDCount="CMD"$i
   eval CMD="$"$CMDCount
   echo "server CMD "${CMD}""${CMDCount}"";
   echo "" 
   (sleep 1;echo $login;
    sleep 1;echo ${CMD};
    sleep 1;echo $logout;sleep 1)|telnet localhost 9685
    sleep 1

done**

the output is like these:

server CMD xxxxxxxxxxxxxxxxxxxxxxxxxxxxCMD2

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
CONNECTING TO xxx...
PROCESS CPL CONNECTED...
Enter command:RESP:0,sucess;
Enter command:
Enter command: 
Enter command:Connection closed by foreign host.
Sat Aug  3 12:18:21 CST 2013
server CMD xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCMD3

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
CONNECTING TO xxx...
PROCESS CPL CONNECTED...
Enter command:RESP:0,sucess;
Enter command:
Enter command: 
Enter command:Connection closed by foreign host.
Sat Aug  3 12:18:26 CST 2013
server CMD xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx;CMD4

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
CONNECTING TO xxx...
PROCESS CPL CONNECTED...
Enter command:RESP:0,sucess;
Enter command:
Enter command: 
Enter command:Connection closed by foreign host.

You may find these links useful :

And, to extract the response part from the whole string, you can use something like this :

echo `expr "${CMD}" : '\.*?(RESP)(:)(\\d)\'`

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM