bash의 새로운 기능입니다.bash 스크립트의 문자열에서 패턴을 추출하십시오.
이 문제를 해결하기 위해 매개 변수 확장, grep, sed 및 echo를 실험했지만 실제로 해결할 수는 없습니다.
나는 $ PWD에서 bash 스크립트로 특정 패턴을 추출하려고한다.
는의 전체 경로의 다양한있을 수 있다고 가정 해 봅시다 :/home/files/tmp8
/home/tmp28/essential
/home/tmp2/essential/log
/home/files/tmp10/executables
/tmp8/files/whatever/etc
모든 경우에, 나는 1 개 이상의 정수 뒤에 "TMP"를 포함하는 모든 문자열을 추출 할.
그래서, $ PWD가 처리되는 각 인스턴스에, 그것은
설명은 "tmp8", "tmp28"등 "tmp2"를 반환하는 방법이 문제를 해결에 관해서 기능/연산자 작업 또한 크게 감사하겠습니다.
두 가지 설명에 감사드립니다. 추출 된 패턴을 문자열에 할당하거나 다른 명령에서 사용할 수 있습니까? –
추출 된 패턴을 변수'str'에 할당하려면'str = $ (grep -o 'tmp [0-9] *'<<< "$ PWD")'를 사용하십시오. – anubhava
'grep -o 'tmp [ 0-9] * '<<< "$ PWD"'는 매치 된 문자열 즉'tmp'만 반환합니다. –
anubhava