sed를 사용할 때 xargs 출력을 리디렉션하는 방법

Slartibartfast

더 나은 관리 시스템으로 전환 한 이후로 각 소스 파일의 맨 위에있는 모든 중복 로그를 제거하고 싶습니다. 메모장 ++에서 "파일에서 바꾸기"를 사용하고 일치 항목을 \A(//.*\n)+공백으로 대체하여 결과를 얻을 수있었습니다 . 그러나 Linux에서는 그런 운이 없으며 'xargs'와 'sed'에 의지해야합니다.

내가 사용하는 sed 표현식은 다음과 같습니다.

sed '1,/^[^\/]/{/^[^\/]/b; d}'

확실히 추악하지만 작동하는 것 같습니다.

내가 가진 문제는 우리 시스템의 모든 소스 파일을 공급하기 위해 'xargs'를 통해 실행하려고 할 때 출력을 '스트립 된'파일로 리디렉션 할 수 없다는 것입니다. 원본.

나는 라인에 무언가를 원한다.

find . -name "*.com" -type f -print0 | xargs -0 -I file sed '1,/^[^\/]/{/^[^\/]/b; d}' "file" > "file.stripped"

그러나 이미 너무 많은 따옴표를 사용하고 있기 때문에 ">"를 수신 환경 (쉘)으로 전달하는 데 슬픔이 있습니다. 나는 모든 종류의 탈출과 쉘 "래퍼"를 시도했지만 공을 치지 못합니다.

누구든지 나를 올바른 방향으로 안내해 줄 수 있습니까?

고마워, 슬라 티.

AFAbyss

예를 들어 더 간단한 sed 표현식으로 비슷한 시나리오를 만들었습니다.

각각 안에 "abcd"문자열이있는 3 개의 파일을 만들었습니다.

# ls -l
total 12
-rw-r--r-- 1 root root 5 Oct  6 09:05 test.aaaaa.com
-rw-r--r-- 1 root root 5 Oct  6 09:05 test2.aaaaa.com
-rw-r--r-- 1 root root 5 Oct  6 09:05 test3.aaaaa.com
# cat test*
abcd
abcd
abcd

xargs 대신 -exec 옵션을 사용하여 보여준대로 find 명령을 실행하고 "b"의 모든 "a"와 입력 파일을 직접 작성하는 -i 옵션을 대체하는 어리석은 표현의 sed 표현식을 대체합니다.

# find . -name "*.com" -type f -print0 -exec sed -i 's/a/b/g' {} \;
./test2.aaaaa.com./test3.aaaaa.com./test.aaaaa.com
# cat test*
bbcd
bbcd
bbcd

귀하의 경우에는 다음과 같이 보일 것입니다.

# find . -name "*.com" -type f -print0 -exec sed -i '1,/^[^\/]/{/^[^\/]/b; d}' {} \;

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

C #에서 실행할 때 cmd 출력을 사용하여 driverquery를 파일로 리디렉션하는 방법

분류에서Dev

출력을 리디렉션하거나`sed -i`를 사용할 권한이 없을 때 텍스트 파일의 내용을 변경하는 방법

분류에서Dev

centos 7에서 httpd를 사용할 때 URL을 리디렉션하는 방법

분류에서Dev

사이트를 사용할 수 없을 때 페이지를 리디렉션하는 쉬운 방법?

분류에서Dev

페이징 mvc를 사용할 때 순환 리디렉션을 피하는 방법은 무엇입니까?

분류에서Dev

여러 AuthenticationProvider를 사용할 때 PreAuthenticatedAuthenticationProvider에서 UsernameNotFoundException을 리디렉션하는 방법은 무엇입니까?

분류에서Dev

xargs : 대체 할 때 리터럴 큰 따옴표를 사용하는 방법?

분류에서Dev

ffmpeg를 사용하여 동일한 디렉토리로 일괄 변환 할 때 출력 이름을 변경하는 방법은 무엇입니까?

분류에서Dev

명령이 사용자 입력을 프롬프트 할 때 명령 출력을 파일로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

출력을 리디렉션 할 때 특정 파일 권한을 설정하는 방법은 무엇입니까?

분류에서Dev

here 문서를 사용하는 동안 출력을 리디렉션하는 방법

분류에서Dev

cURL : 리디렉션 할 때 이상한 출력을 억제하는 방법은 무엇입니까?

분류에서Dev

cURL : 리디렉션 할 때 이상한 출력을 억제하는 방법은 무엇입니까?

분류에서Dev

찾기를 사용할 때 "Permission denied"출력을 비활성화하는 방법

분류에서Dev

Python에서 os.execvp ()를 사용하여 명령 출력을 리디렉션하는 방법

분류에서Dev

PHP -S localhost 서버를 사용할 때 리디렉션 작업 (.htaccess)을 얻는 방법은 무엇입니까?

분류에서Dev

폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

분류에서Dev

폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

분류에서Dev

폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

분류에서Dev

ssh를 통해 명령을 실행할 때 '모호한 리디렉션'을 방지하는 방법

분류에서Dev

Microsoft Azure로 인증 할 때 nativeclient 리디렉션 URI를 사용하는 방법은 무엇입니까?

분류에서Dev

LDAP 사용자에게 디렉토리를 탐색 할 권한이 없을 때 바인딩하는 방법

분류에서Dev

Unix에서 "ls"를 사용할 때 첫 번째 디렉토리와 파일 등을 정렬하는 방법

분류에서Dev

리플렉션을 사용할 때 특정 생성자를 반환하는 방법은 무엇입니까?

분류에서Dev

join -Postgresql을 사용할 때 출력이 변경되지 않고 count ()를 사용하는 방법

분류에서Dev

리디렉션 할 때 쿼리를 올바르게 리디렉션하는 방법은 데이터베이스에 입력 값을 입력하지 않습니다.

분류에서Dev

spring mvc를 사용하여 jquery ajax 호출로 리디렉션하는 방법

분류에서Dev

다이어그램 정보를 클릭 할 때 리디렉션하는 방법

분류에서Dev

개조에서 리디렉션 할 때 헤더를 포함하는 방법

Related 관련 기사

  1. 1

    C #에서 실행할 때 cmd 출력을 사용하여 driverquery를 파일로 리디렉션하는 방법

  2. 2

    출력을 리디렉션하거나`sed -i`를 사용할 권한이 없을 때 텍스트 파일의 내용을 변경하는 방법

  3. 3

    centos 7에서 httpd를 사용할 때 URL을 리디렉션하는 방법

  4. 4

    사이트를 사용할 수 없을 때 페이지를 리디렉션하는 쉬운 방법?

  5. 5

    페이징 mvc를 사용할 때 순환 리디렉션을 피하는 방법은 무엇입니까?

  6. 6

    여러 AuthenticationProvider를 사용할 때 PreAuthenticatedAuthenticationProvider에서 UsernameNotFoundException을 리디렉션하는 방법은 무엇입니까?

  7. 7

    xargs : 대체 할 때 리터럴 큰 따옴표를 사용하는 방법?

  8. 8

    ffmpeg를 사용하여 동일한 디렉토리로 일괄 변환 할 때 출력 이름을 변경하는 방법은 무엇입니까?

  9. 9

    명령이 사용자 입력을 프롬프트 할 때 명령 출력을 파일로 리디렉션하는 방법은 무엇입니까?

  10. 10

    출력을 리디렉션 할 때 특정 파일 권한을 설정하는 방법은 무엇입니까?

  11. 11

    here 문서를 사용하는 동안 출력을 리디렉션하는 방법

  12. 12

    cURL : 리디렉션 할 때 이상한 출력을 억제하는 방법은 무엇입니까?

  13. 13

    cURL : 리디렉션 할 때 이상한 출력을 억제하는 방법은 무엇입니까?

  14. 14

    찾기를 사용할 때 "Permission denied"출력을 비활성화하는 방법

  15. 15

    Python에서 os.execvp ()를 사용하여 명령 출력을 리디렉션하는 방법

  16. 16

    PHP -S localhost 서버를 사용할 때 리디렉션 작업 (.htaccess)을 얻는 방법은 무엇입니까?

  17. 17

    폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

  18. 18

    폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

  19. 19

    폼 인증을 사용하여 WCF 서비스를 호출 할 때 리디렉션 방지

  20. 20

    ssh를 통해 명령을 실행할 때 '모호한 리디렉션'을 방지하는 방법

  21. 21

    Microsoft Azure로 인증 할 때 nativeclient 리디렉션 URI를 사용하는 방법은 무엇입니까?

  22. 22

    LDAP 사용자에게 디렉토리를 탐색 할 권한이 없을 때 바인딩하는 방법

  23. 23

    Unix에서 "ls"를 사용할 때 첫 번째 디렉토리와 파일 등을 정렬하는 방법

  24. 24

    리플렉션을 사용할 때 특정 생성자를 반환하는 방법은 무엇입니까?

  25. 25

    join -Postgresql을 사용할 때 출력이 변경되지 않고 count ()를 사용하는 방법

  26. 26

    리디렉션 할 때 쿼리를 올바르게 리디렉션하는 방법은 데이터베이스에 입력 값을 입력하지 않습니다.

  27. 27

    spring mvc를 사용하여 jquery ajax 호출로 리디렉션하는 방법

  28. 28

    다이어그램 정보를 클릭 할 때 리디렉션하는 방법

  29. 29

    개조에서 리디렉션 할 때 헤더를 포함하는 방법

뜨겁다태그

보관