열에서 데이터 분할

열에서 데이터 분할

그래서 현재 일부 이메일 주소를 입력했는데 별칭과 도메인을 분리하여 줄 끝에 복사하려고 합니다. 예를 들어 가 있는 행에서 [email protected]:blah:blah을 갖고 싶습니다 [email protected]:blah:blah:something:test.com.

구분 기호를 기준으로 잘라내어 모든 별칭 목록과 모든 도메인 목록을 출력할 수 있을 것 같지만 @기존 행에 하나씩 추가하는 방법을 모르겠습니다. 아이디어가 있나요?

답변1

이 스레드를 시작하는 약간 서투른 방법은 다음과 같습니다.

% x="[email protected]:blah:blah" 
% first=$(echo $x|cut -d "@" -f 1)
% second=$(echo $x|cut -d "@" -f 2|cut -d ":" -f 1)
% echo "$x:$first:$second" 

[email protected]:blah:blah:something:test.com

답변2

$ echo '[email protected]:blah:blah' |
    perl -lne '
        @F = split /(\@|\.|:)/, $_;
        print "$_:$F[0]:$F[2].$F[4]."
    ' 
[email protected]:blah:blah:something:test.com.

관련 정보