기본값을 얻기 위해 bash one-liner를 강화하는 방법

Walter Schrabmair

포괄적 인 스크립트에이 한 줄짜리가 있습니다.

grep -P -o "(?s)description\".+>" ./Hlinks.html \
  | grep -P -o "(?s)ISBN[^:]{0,1}: {0,1}[-0-9X]+[ \|]*" \
  | perl -p -e  "s/ISBN[^:]*:*|[\|| ]//g"
  | sed -n "/.*/p;1q"  > ./nISBN.txt

이제 한 줄짜리가 아무 것도 출력하지 않을 때 기본 출력 (fe "NA")을 얻고 싶습니다. 이 소원을 얻기 위해 한 줄을 어떻게 풍부하게 할 수 있습니까?

고마워

월터

글렌 잭맨

perl은 grep 및 sed가 수행 할 수있는 모든 작업을 수행 할 수 있으므로 파이프 라인을 단일 perl 스크립트로 축소 할 수 있습니다. 같은 것

perl -nE '
    $found = 0;
    if (/description\".+>/ && /ISBN[^:]?:\s*([-0-9X]+[ \|]*)/) {
        $found = 1;
        say $1;
    }
    END {say "N/A" unless $found}
' ./Hlinks.html  > ./nISBN.txt

grep은 선 지향 도구이므로 (?s)실제로 당신을 위해 어떤 일을하고 있는지 확실하지 않습니다 .

한 걸음 물러서서 해당 데이터에 HTML 파서를 사용해야합니다. 정규 표현식은 HTML을 파싱하기에 충분히 강력하지 않습니다.-> https://stackoverflow.com/q/4598162/7552

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

결과 세트에서 dict를 작성하기 위해 Python One Liner를 수행하는 방법

분류에서Dev

값을 얻기 위해 배열 객체를 얻는 방법

분류에서Dev

특정 값을 얻기 위해 NSDictionary를 반복하는 방법

분류에서Dev

foreach를 사용하기 위해 배열 값을 얻는 방법

분류에서Dev

긴 XOR 체인을 최적화하기 위해 GCC를 얻는 방법

분류에서Dev

xml에서 값을 얻기 위해 xmllint를 사용하는 방법

분류에서Dev

로그를 유용하게 단순화하기 위해 최대 값을 얻는 방법

분류에서Dev

ID를 얻기 위해 URL을 분할하는 방법 PHP

분류에서Dev

이메일을 제출하기 위해 POST를 얻는 방법

분류에서Dev

계획을 유지하기 위해 '를 얻는 방법

분류에서Dev

Bash 셸 기록 범위를 얻는 방법

분류에서Dev

react-confirm-alert 기본값을 재정의하기 위해 사용자 지정 CSS를 추가하는 방법

분류에서Dev

특수 기호를 읽기 위해 BufferedReader를 얻는 방법

분류에서Dev

공백을 찾기 위해 각 jquery를 얻는 방법

분류에서Dev

이 결과를 얻기 위해 조인하는 방법

분류에서Dev

카운트 다운하기 위해 난수를 얻는 방법

분류에서Dev

날짜 범위를 얻기 위해 null 열을 병합하는 방법

분류에서Dev

요소를 얻기 위해 POST 본문 응답을 변환하는 방법은 무엇입니까?

분류에서Dev

Angular : 기본 @Input 값을 얻는 방법?

분류에서Dev

rpm을 제거하기 위해 yum 제거를 강제하는 방법

분류에서Dev

SQL Server 2008 R2 복제를 위해 스키마에 기본값 설정을 포함하는 방법

분류에서Dev

원하는 결과를 얻기 위해 XML을 구문 분석하는 방법

분류에서Dev

bash one-liner : 변수를 명령의 출력으로 설정하거나 출력이 비어있는 경우 기본값으로 설정

분류에서Dev

부분 인수를 완료하고 더 많은 힌트를 제공하기 위해 bash 명령 줄 완성을 얻는 방법

분류에서Dev

최대를 찾기 위해 배열 값을 비교하는 Bash

분류에서Dev

약속을 반환하기 위해 AngularFireAuth에서 signInAnonymously를 얻는 방법

분류에서Dev

Ansible에서 패턴을 검색하기 위해 json_query를 얻는 방법

분류에서Dev

arp 패킷을 얻기 위해 libpcap 필터를 설정하는 방법

분류에서Dev

ActionBar에 텍스트를 설정하기 위해 SwipeRefreshLayout을 얻는 방법

Related 관련 기사

  1. 1

    결과 세트에서 dict를 작성하기 위해 Python One Liner를 수행하는 방법

  2. 2

    값을 얻기 위해 배열 객체를 얻는 방법

  3. 3

    특정 값을 얻기 위해 NSDictionary를 반복하는 방법

  4. 4

    foreach를 사용하기 위해 배열 값을 얻는 방법

  5. 5

    긴 XOR 체인을 최적화하기 위해 GCC를 얻는 방법

  6. 6

    xml에서 값을 얻기 위해 xmllint를 사용하는 방법

  7. 7

    로그를 유용하게 단순화하기 위해 최대 값을 얻는 방법

  8. 8

    ID를 얻기 위해 URL을 분할하는 방법 PHP

  9. 9

    이메일을 제출하기 위해 POST를 얻는 방법

  10. 10

    계획을 유지하기 위해 '를 얻는 방법

  11. 11

    Bash 셸 기록 범위를 얻는 방법

  12. 12

    react-confirm-alert 기본값을 재정의하기 위해 사용자 지정 CSS를 추가하는 방법

  13. 13

    특수 기호를 읽기 위해 BufferedReader를 얻는 방법

  14. 14

    공백을 찾기 위해 각 jquery를 얻는 방법

  15. 15

    이 결과를 얻기 위해 조인하는 방법

  16. 16

    카운트 다운하기 위해 난수를 얻는 방법

  17. 17

    날짜 범위를 얻기 위해 null 열을 병합하는 방법

  18. 18

    요소를 얻기 위해 POST 본문 응답을 변환하는 방법은 무엇입니까?

  19. 19

    Angular : 기본 @Input 값을 얻는 방법?

  20. 20

    rpm을 제거하기 위해 yum 제거를 강제하는 방법

  21. 21

    SQL Server 2008 R2 복제를 위해 스키마에 기본값 설정을 포함하는 방법

  22. 22

    원하는 결과를 얻기 위해 XML을 구문 분석하는 방법

  23. 23

    bash one-liner : 변수를 명령의 출력으로 설정하거나 출력이 비어있는 경우 기본값으로 설정

  24. 24

    부분 인수를 완료하고 더 많은 힌트를 제공하기 위해 bash 명령 줄 완성을 얻는 방법

  25. 25

    최대를 찾기 위해 배열 값을 비교하는 Bash

  26. 26

    약속을 반환하기 위해 AngularFireAuth에서 signInAnonymously를 얻는 방법

  27. 27

    Ansible에서 패턴을 검색하기 위해 json_query를 얻는 방법

  28. 28

    arp 패킷을 얻기 위해 libpcap 필터를 설정하는 방법

  29. 29

    ActionBar에 텍스트를 설정하기 위해 SwipeRefreshLayout을 얻는 방법

뜨겁다태그

보관