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
使用shell脚本从文件列表中选择单独更新查询_Shell - Fatal编程技术网

使用shell脚本从文件列表中选择单独更新查询

使用shell脚本从文件列表中选择单独更新查询,shell,Shell,我正在尝试使用此脚本从文件列表中获取更新查询。我需要单独获取包含“Update”的行,而不是包含“Update”或“UpdateSQL”的行,因为我们知道所有更新查询都包含我正在使用的集合。但我需要删除像Update和UpdateSQL这样的情况。有人能帮忙吗 nawk -v file="$TEST" 'BEGIN{RS=";"} /[Uu][Pp][Dd][Aa][Tt][Ee] .*[sS][eE][tT]/{ gsub(/.*UPDATE/,"UPDATE");gsub(/.*Upda

我正在尝试使用此脚本从文件列表中获取更新查询。我需要单独获取包含“Update”的行,而不是包含“Update”或“UpdateSQL”的行,因为我们知道所有更新查询都包含我正在使用的集合。但我需要删除像Update和UpdateSQL这样的情况。有人能帮忙吗

nawk -v file="$TEST" 'BEGIN{RS=";"}
  /[Uu][Pp][Dd][Aa][Tt][Ee] .*[sS][eE][tT]/{ gsub(/.*UPDATE/,"UPDATE");gsub(/.*Update/,"Update");gsub(/.*update/,"update");gsub(/\n+/,"");print file,"#",$0;}  
  ' "$TEST"  >> $OUT

您可以先尝试使用grep(我假设您使用的是Solaris)


您可以先尝试使用grep(我假设您使用的是Solaris)


如果没有所有的
[Uu]
,这对我来说似乎更具可读性,而且它不需要
grep

{ line=tolower($0); if (line ~ /update .*set/ && line !~ /updated|updatesql/) { gsub ...

如果没有所有的
[Uu]
,这对我来说似乎更具可读性,而且它不需要
grep

{ line=tolower($0); if (line ~ /update .*set/ && line !~ /updated|updatesql/) { gsub ...