특정 패턴을 찾아 해당 라인에서 교체하세요.

특정 패턴을 찾아 해당 라인에서 교체하세요.

다음을 포함하는 파일 세트가 있습니다.

    VIEW_NAME FOR COLUMN DNAME      ,
    VIEW_OWNER FOR COLUMN DCREATOR   ,
    OBJECT_NAME FOR COLUMN ONAME      ,
    OBJECT_SCHEMA FOR COLUMN OSCHEMA   

따라서 키워드를 찾을 때마다 FOR COLUMN해당 줄의 첫 번째 문자와 마지막 문자를 바꿔야 합니다. 출력은 다음과 같아야합니다

   DNAME FOR COLUMN VIEW_NAME,
   DCREATOR FOR COLUMN VIEW_OWNER,
   ONAME FOR COLUMN OBJECT_NAME

등.

답변1

사용 awk:

awk '$2" "$3=="FOR COLUMN"{a=$1; $1=$4; $4=a}1' file
  • FORCOLUMN먼저 두 번째( ) 필드와 세 번째 필드( ) 의 값을 비교합니다.
  • 일치하는 항목이 있으면 첫 번째( $1) 및 네 번째( $4) 필드를 바꿉니다.

관련 정보