awk命令powershell

时间:2015-07-17 13:23:51

标签: powershell awk

您好我尝试将awk命令转录到powershell

我有一个文本文件

SQLBefore:=
UPDATE SYSADM.PS_S1_R_FLWUP
SET S1_FLWUP_DATE_CHK=SYSTIMESTAMP
, S1_FLWUP_DATE_LAST=NULL
WHERE S1_FLWUP_NAME='GGGGG_ETAT_JJ'

SQLAfter:=
UPDATE SYSADM.PS_S1_R_FLWUP
SET S1_FLWUP_DATE_LAST=SYSTIMESTAMP
, S1_FLWUP_STAT_SID=1
WHERE S1_FLWUP_NAME='TTTTT_ETAT_'

SQLFailed:=
UPDATE SYSADM.PS_S1_R_FLWUP
SET S1_FLWUP_DATE_LAST=S1_FLWUP_DATE_FRST
, S1_FLWUP_STAT_SID=3
WHERE S1_FLWUP_NAME='JJJJ_ETAT_JJJ'

我想在powershell

中执行与此unix命令相同的操作
cat $this_file|awk '/SQLAfter/,/SQLFailed/ {print $0}'| grep -v SQL|sed -e 's/^$//'

它的回归

UPDATE SYSADM.PS_S1_R_FLWUP
SET S1_FLWUP_DATE_CHK=SYSTIMESTAMP
, S1_FLWUP_DATE_LAST=NULL
WHERE S1_FLWUP_NAME='GGGGG_ETAT_JJ'

我一直坚持像awk一样做分隔符,在" SQLBefore:="之间。和" SQLAfter:="与powershell

感谢您的帮助。

我是powershell的初学者,对不起我的英语

1 个答案:

答案 0 :(得分:0)

一种可能性,假设我正确地阅读了这个问题(然而"糟糕"你认为你的英语可能是我向你保证它比我的AWK要好得多。)

((get-content testfile.txt -raw) -split 'SQL(?:Before|After):=')[1]