내가 변수를 보자 문자열 아래에 포함하고자하는 고통을 찾을
V1 = "이 SELECT * FROM tablename 어디 ID> 1000"지금이후
내가 통해이 삭제 선택하지만 변환합니다 bash/ksh 스크립트.
문자열 "from"이 변수에 복사 된 행의 나머지 부분과 유사하며 아래 라인과 같이 쉽게 삭제 문으로 변환됩니다.
id가 1000보다 큰 테이블에서 삭제하십시오.
누구나 이것에 대해 생각할 수 있습니다.
는내가 변수를 보자 문자열 아래에 포함하고자하는 고통을 찾을
V1 = "이 SELECT * FROM tablename 어디 ID> 1000"지금이후
내가 통해이 삭제 선택하지만 변환합니다 bash/ksh 스크립트.
문자열 "from"이 변수에 복사 된 행의 나머지 부분과 유사하며 아래 라인과 같이 쉽게 삭제 문으로 변환됩니다.
id가 1000보다 큰 테이블에서 삭제하십시오.
누구나 이것에 대해 생각할 수 있습니다.
는당신은 같이 나오지도 사용할 수 있습니다
v1="select c1,c2 from tablename where id > 1000"
sed '/select .* from /s/select .* from/delete from/' <<< "$v1"
delete from tablename where id > 1000
방법에 대해 :
는
스크립트를 비난하는 매개 변수로 전달할 때문에 언젠가 몇 열 이름을 선택하는 것입니다 실제로 선택 또한 통과
그것은 v1 = "c1, c2 select tablename id> 1000"에서 sed 이후에 tablename id> 1000 – Rajnish에서 삭제해야합니다. 그러면 'select a, b, c, from'을 'delete'로 바꿉니다. '? – anubhava
우리가 어떻게 바꿀지, 그것은 동적으로 온다. 어떤 시간은 여러번 올 수있다. 몇가지 배수가있을 수있다. tablename에서 select c1을 선택한다. id> 1000 언젠가 id> 1000이되는 tablename에서 c1, c2를 선택한다. id> 1000 – Rajnish