Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 Shell脚本条件_Sql Server 2008_Shell - Fatal编程技术网

Sql server 2008 Shell脚本条件

Sql server 2008 Shell脚本条件,sql-server-2008,shell,Sql Server 2008,Shell,我正在尝试使用shell脚本从文本文件中获取数据,方法是搜索具有多个条件的行。例如,在此文件中: TX VIDEO ID 34 B 33 SIZE 672 SRC -1 DST 11 TX CBR ID 35 B 35 SIZE 10 SRC -1 DST 11 RX VOIP ID 0 B 0 SIZE 32 SRC -1 DST 3 D RX VOIP ID 8 B 8 SIZE 32 SRC -1 DST 5 D RX VOIP ID 20 B 20 SIZE 32 SRC -

我正在尝试使用shell脚本从文本文件中获取数据,方法是搜索具有多个条件的行。例如,在此文件中:

TX VIDEO ID 34 B 33 SIZE 672 SRC -1 DST 11 
TX CBR ID 35 B 35 SIZE 10 SRC -1 DST 11  
RX VOIP ID 0 B 0 SIZE 32 SRC -1 DST 3 D  
RX VOIP ID 8 B 8 SIZE 32 SRC -1 DST 5 D 
RX VOIP ID 20 B 20 SIZE 32 SRC -1 DST 8 D 
RX VIDEO ID 9 B 9 SIZE 1490 SRC -1 DST 5 D 
RX VIDEO ID 21 B 21 SIZE 1490 SRC -1 DST 8 D 
TX INF_BUF ID 37 B 10 SIZE 776 SRC 1 DST 5 T 
TX INF_BUF ID 39 B 22 SIZE 776 SRC 2 DST 8 T 

我有
“接收视频”
“发送视频”
两行。第一个条件是,从
“DST 3&&DST 5”中的所有
“RX VIDEO”
获取数据。对于多个条件,您可以将grep输出传输到另一个grep

如果要在文件中搜索AAA和BBB行,可以执行以下操作:

grep 'AAA' file | grep 'BBB'
或者,您可以仅使用一个grep使用正则表达式进行搜索:

grep -e 'AAA.*BBB' -e 'BBB.*AAA' file
如果匹配了任何
-e
选项后的表达式,您将得到一个结果。这意味着它的行为类似于或

这两个示例都会找到如下行:

AAABBB
AAA BBB
BBB AAA
BBBAAA
AAA-BBB
AAA---BBB
AAAA BBB
xAAAAAAA BBB AAAAA
等等

例如:

grep 'RX VIDEO' file | grep -e 'DST 3\>' -e 'DST 5\>'
或:

这将搜索
RX视频
以及
DST 3
DST 5


编辑:我在表达式末尾添加了一个单词,以表示对DST 37 Being found的支持。请参阅Keith的评论。

注意,
'dst3'
的grepping也将匹配
dst37
。您可能需要指定单词边界:
grep'RX VIDEO.*DST[35]\>'文件
谢谢您的提示。我改了。
grep 'RX VIDEO.*DST [35]\>' file