모드별로 csplit 출력 파일 이름을 설정하는 방법은 무엇입니까?

모드별로 csplit 출력 파일 이름을 설정하는 방법은 무엇입니까?

csplit패턴을 통해 출력 이름을 설정하는 방법이 있습니까 ? 호스트의 ssh-config를 해당 파일로 분할하고 싶습니다.

해결책이 있다면 csplit저도 기쁘겠습니다 .

답변1

아니요. csplit출력 파일 이름에는 정수만 사용할 수 있습니다. 출력 파일을 컨텐츠 기반으로 만들려면 awk 또는 Perl과 같은 다른 도구를 사용하십시오.

awk '
    BEGIN {out="_"}
    $1 == "Host" {if ($2 ~ /\//) exit(1); out=$2}
    {print >out}'

이 코드는 기본적인 오류 검사만 수행한다는 점에 유의하세요(적어도 현재 디렉터리에만 쓰는지 확인했습니다). 신뢰할 수 없는 파일에서는 실행하지 마세요.

관련 정보