'y'명령을 전체 줄이 아닌 일치하는 텍스트에만 적용 할 수 있습니다.

케이스

답변을 작성한 후 sed y//명령을 전체 줄이 아닌 일치 항목에만 적용 할 수 있는지 알아보기 위해 인터넷 검색을 수행했습니다 . 관련있는 것을 찾을 수 없었습니다.

$ echo clayii | sed -e '/clayii/ y/clayk/kieio/'
kieiii

즉, 검색 단어 (clayii)가 입력 줄에있는 여러 단어 중 하나 일 경우 y//명령 이 해당 단어 에만 적용 되고 나머지 줄에는 적용 되지 않도록합니다.

즉 나는 이것을 원하지 않는다 :

$ echo can sed ignore everything but the matching word - clayii | 
    sed -e '/clayii/ y/clayk/kieio/'
ken sed ignore everithing but the metkhing word - kieiii

그게 가능 sed합니까? 또는 더 유능한 것을 사용해야 perl합니까?

don_crissti

아니요, y명령은 패턴 공간에서 일치하는 모든 문자에 적용됩니다. POSIX sed문서에 따라 (내 강조) :

[ 2addr ] Y / 문자열 1 / 문자열 2 / 
             교체 모든 문자의 발생 문자열 1을 
             의 해당 문자 문자열 2 .

OSX / BSDman 페이지 :

[2addr] y / string1 / string2 / 패턴 
             공간 에서 string1모든 문자를 string2 의 해당 문자로 
             바꿉니다 .

GNU sed info페이지 :

Y / 소스 문자 / 최종 도착 - 문자 / 
             음역은 어떤 임의의 일치하는 패턴 영역 내의 문자 소스를 문자 에 대응하는 문자로 최종 도착-문자 .

물론, 보류 버퍼를 사용하여 현재 패턴 공간을 절약 한 다음 일치 만 유지하고 패턴 공간을 음역하고 복원하여 초기 일치를 결과로 대체 할 수 있습니다 (예 : 비교).

sed 'y/words/evles/' <<<'words whispered by the drows'

sed 'h;s/.*\(drows\).*/\1/;y/words/evles/;G;s/\(.*\)\n\(.*\)drows\(.*\)/\2\1\3/' <<<'words whispered by the drows'

그러나 패턴 / 요구 사항을 추가하기 시작하자마자 복잡해집니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

텍스트 파일에서 특정 줄 블록을 찾아서 대체 할 수있는 명령 줄 유틸리티 앱이 있습니까?

분류에서Dev

Ctrl-R과 동일하지만 전체 명령 (zsh)이 아닌 단일 인수 용이 있습니까?

분류에서Dev

GUI가 아닌 명령 줄에서 추적 32 기능을 사용할 수 있습니까?

분류에서Dev

1.23 데이터 파일에서 전체 명령 줄을 추출 할 수 있습니까?

분류에서Dev

왜 명령문이 아닌 JSX에서만 표현식을 사용할 수 있습니까?

분류에서Dev

nullable이 아닌 개체를 nullalble을 허용하는 매개 변수로 전달할 수 없습니다.

분류에서Dev

DBpedia에서 사용할 수있는 모든 Person을 가져 오는 SPARQL 쿼리는 전체가 아닌 일부 Person 데이터 만 표시합니다.

분류에서Dev

splatting을 사용하여 PowerShell이 아닌 실행 파일에 인수를 전달할 수 있습니까?

분류에서Dev

`execl ()`을 사용하여 C / C ++에서 시스템 명령을 실행하고 함수 인수를 실행 파일이 아닌 명령 줄로만 전달하려면 어떻게해야합니까?

분류에서Dev

전체 문자열을 하나의 명령 줄 인수로 C의 argv에 전달할 수 있습니까?

분류에서Dev

.bib 파일을 .Rmd 파일이있는 폴더가 아닌 다른 폴더에 배치 할 수 있습니까?

분류에서Dev

사용자가 특정 sudo 명령을 실행할 수 있는지 확인하기 위해 루트가 아닌 사용자로 실행할 수있는 명령이 있습니까?

분류에서Dev

Windows 명령 줄에서 cd 명령을 사용하여 D : \로 이동할 수 없습니다.

분류에서Dev

cat 명령은 텍스트 파일을 읽을 수있을뿐만 아니라 편집 할 수 있습니까?

분류에서Dev

정적이 아닌 변수는 정적 컨텍스트 Java에서 참조 할 수 없습니다.

분류에서Dev

루트가 아닌 사용자는 exim을 사용하여 명령 줄에서 메일을 보낼 수 없습니다.

분류에서Dev

Window10에서 명령 줄을 사용하여 웹 사이트 msi를 설치할 수 없습니다.

분류에서Dev

PHP에서 전역 변수에 액세스 할 수 없습니다. "치명적인 오류 : 개체가 아닌 쿼리 () 멤버 함수 호출"

분류에서Dev

콘솔 println을 GUI로 이동하는 동안 정적이 아닌 JLabel을 정적 컨텍스트에서 참조 할 수 없습니다.

분류에서Dev

전체 관측치가 아닌 y 축 백분율을 가변적으로 만드는 R 함수가 있습니까?

분류에서Dev

정적이 아닌 setGravity는 정적 컨텍스트에서 참조 할 수 없습니다.

분류에서Dev

루트가 아닌 사용자가 명령 줄에서 네트워크 트래픽을 어떻게 모니터링 할 수 있습니까?

분류에서Dev

Mac : 파일은 그래픽 인터페이스가 아닌 명령 줄에 표시 될 수 있습니다.

분류에서Dev

체크 스타일에서 명령 줄을 실행할 수 없습니다.

분류에서Dev

대체 텍스트에 수학을 적용 할 수있는 텍스트 편집기가 있습니까?

분류에서Dev

명령 줄에서 텍스트 파일의 모든 마크 다운을 쉽게 제거 할 수있는 방법이 있습니까?

분류에서Dev

명령 줄 도구를 사용하여 여러 줄의 작은 따옴표 안에있는 텍스트를 어떻게 대체 할 수 있습니까?

분류에서Dev

명령 줄 매개 변수 설정-데스크탑에 아이콘을 표시하지 않는 데 사용할 명령은 무엇입니까?

분류에서Dev

열려있는 브라우저에서`firefox` 명령 줄 응용 프로그램이 활성 탭을 전환하지 않도록 강제 할 수 있습니까?

Related 관련 기사

  1. 1

    텍스트 파일에서 특정 줄 블록을 찾아서 대체 할 수있는 명령 줄 유틸리티 앱이 있습니까?

  2. 2

    Ctrl-R과 동일하지만 전체 명령 (zsh)이 아닌 단일 인수 용이 있습니까?

  3. 3

    GUI가 아닌 명령 줄에서 추적 32 기능을 사용할 수 있습니까?

  4. 4

    1.23 데이터 파일에서 전체 명령 줄을 추출 할 수 있습니까?

  5. 5

    왜 명령문이 아닌 JSX에서만 표현식을 사용할 수 있습니까?

  6. 6

    nullable이 아닌 개체를 nullalble을 허용하는 매개 변수로 전달할 수 없습니다.

  7. 7

    DBpedia에서 사용할 수있는 모든 Person을 가져 오는 SPARQL 쿼리는 전체가 아닌 일부 Person 데이터 만 표시합니다.

  8. 8

    splatting을 사용하여 PowerShell이 아닌 실행 파일에 인수를 전달할 수 있습니까?

  9. 9

    `execl ()`을 사용하여 C / C ++에서 시스템 명령을 실행하고 함수 인수를 실행 파일이 아닌 명령 줄로만 전달하려면 어떻게해야합니까?

  10. 10

    전체 문자열을 하나의 명령 줄 인수로 C의 argv에 전달할 수 있습니까?

  11. 11

    .bib 파일을 .Rmd 파일이있는 폴더가 아닌 다른 폴더에 배치 할 수 있습니까?

  12. 12

    사용자가 특정 sudo 명령을 실행할 수 있는지 확인하기 위해 루트가 아닌 사용자로 실행할 수있는 명령이 있습니까?

  13. 13

    Windows 명령 줄에서 cd 명령을 사용하여 D : \로 이동할 수 없습니다.

  14. 14

    cat 명령은 텍스트 파일을 읽을 수있을뿐만 아니라 편집 할 수 있습니까?

  15. 15

    정적이 아닌 변수는 정적 컨텍스트 Java에서 참조 할 수 없습니다.

  16. 16

    루트가 아닌 사용자는 exim을 사용하여 명령 줄에서 메일을 보낼 수 없습니다.

  17. 17

    Window10에서 명령 줄을 사용하여 웹 사이트 msi를 설치할 수 없습니다.

  18. 18

    PHP에서 전역 변수에 액세스 할 수 없습니다. "치명적인 오류 : 개체가 아닌 쿼리 () 멤버 함수 호출"

  19. 19

    콘솔 println을 GUI로 이동하는 동안 정적이 아닌 JLabel을 정적 컨텍스트에서 참조 할 수 없습니다.

  20. 20

    전체 관측치가 아닌 y 축 백분율을 가변적으로 만드는 R 함수가 있습니까?

  21. 21

    정적이 아닌 setGravity는 정적 컨텍스트에서 참조 할 수 없습니다.

  22. 22

    루트가 아닌 사용자가 명령 줄에서 네트워크 트래픽을 어떻게 모니터링 할 수 있습니까?

  23. 23

    Mac : 파일은 그래픽 인터페이스가 아닌 명령 줄에 표시 될 수 있습니다.

  24. 24

    체크 스타일에서 명령 줄을 실행할 수 없습니다.

  25. 25

    대체 텍스트에 수학을 적용 할 수있는 텍스트 편집기가 있습니까?

  26. 26

    명령 줄에서 텍스트 파일의 모든 마크 다운을 쉽게 제거 할 수있는 방법이 있습니까?

  27. 27

    명령 줄 도구를 사용하여 여러 줄의 작은 따옴표 안에있는 텍스트를 어떻게 대체 할 수 있습니까?

  28. 28

    명령 줄 매개 변수 설정-데스크탑에 아이콘을 표시하지 않는 데 사용할 명령은 무엇입니까?

  29. 29

    열려있는 브라우저에서`firefox` 명령 줄 응용 프로그램이 활성 탭을 전환하지 않도록 강제 할 수 있습니까?

뜨겁다태그

보관