각 줄에 SQL 쿼리가 포함된 텍스트 파일이 있습니다.
각 줄마다 일부 특수 문자를 제거해야 합니다.
설명: 다음과 같은 경우:
select * from Users;
insert into Users values ('UR01','Kim','Director');
결과 파일은 다음과 일치해야 합니다.
select * from Users
insert into Users values UR01 Kim Director
답변1
당신은 그것을 사용할 수 있습니다 sed
:
sed -e 's/[;,()'\'']/ /g;s/ */ /g' input.sql > output.txt
또는 유지되는 문자를 지정하려면 다음을 수행하십시오.
sed -e 's/[^a-zA-Z*0-9]/ /g;s/ */ /g' input.sql > output.txt
답변2
사용 tr
:
$ tr -s "()',;" " " < data
select * from Users
insert into Users values UR01 Kim Director
답변3
awk를 사용하세요:
awk '{gsub(/[;(),'\'']/," "); gsub(/ */," "); print}' your_file