혹시 perl 잘 하시는분 계신가요??

   조회 4217   추천 0    

 #!/usr/bin/perl

while (<>) {
       chomp;

       # CHANGE ME: To the actual fields you use in your CSV file
       my ($domain) = split(/\,/, $_, 1);

       print qq{md $domain URL http://mail.$domain\n};
       print qq{\n};
}


이런 쉘스크립트를 작성했습니다. 원래 의도는 example.com이 입력 되어 있는 CSV를 함께 실행했을 때 화면에

md example.com URL example.com

가 떠야 하는데 실제로 실행하면

URL example.com

이렇게 뜹니다. 제가 작성한 스크립트에 어떤 문제가 있을까요?

짧은글 일수록 신중하게.
가정선생 2016-05
문자열 $domain 을 split 해서 배열로 만들어서 그런것이 아닌가요?
배열의 첫번째만 찍고 마는 듯.
$domain[0] 하면 될 듯합니다.
     
미나리나물 2016-05
두 변수 모두 $domain[0]으로 하면 둘 다 빈 화면만 출력이 되고,
선행변수만 $domain[0] 으로 하고, 뒤에 있는 변수는 $domain 으로 하면
md  URL example.com
이렇게 앞에는 빈칸으로 나오고 뒤쪽만 변수가 지정되어 나옵니다.
ㅠㅠ
          
가정선생 2016-05
0번이 내용 없이 잘린것이면 다른 $domain[1] 에 있지 않을까요?
               
미나리나물 2016-05
일단 배열로 찾으면 0~5까지 넣어 봤는데 전부 비어 있더라구요...이유를 모르겠습니다 ㅠㅠ
가정선생 2016-05
$domain 은 배열이 아니라 스트링 이군요. 펄에서는 명칭이 리스트 군요. 위에 제가 쓴 말은 다 틀린 말이네요 ㅎㅎ
찾아보니 원래 $_ 을 쪼개서 $domain 에 넣으셨군요.
cvs 한줄에 도메인이 여러개면 @domain = split/,/, $_, 갯수;
한개면 my($domain) = split(/,/, $_);
만 하면 되지 않을까요? $_ 뒤에 , 어차피 첫번째 한개가 url이면 1은 빼고,
그래도 출력이 안되면 값을 복사해서 써보시면 어떨까요?

20년 전에 펄과 마이에스큐엘, 아파치로 도서관 관리를 웹베이스로 짜줬는데, 당췌 기억이 안나는 것이, 시간은 어쩔 수 없네요.


QnA
제목Page 3956/5725
2015-12   1767847   백메가
2014-05   5242542   정은준1
2017-12   4223   김준유
2016-02   4223   복실강아지
2015-01   4223   하늘하늘
2016-08   4223   푸하히
2019-01   4223   아마데우쓰
2019-11   4223   가성비충
2020-06   4223   다연우혁아빠
2017-05   4223   차넷컴퓨터
2015-07   4223   이희권
2018-04   4223   머리감자
2016-04   4223   김제연
2017-10   4223   구형활용가
2015-11   4223   캡틴아메리카노
2017-01   4223   신은왜
2016-03   4223   여주이상돈
2017-09   4222   winner712
2015-07   4222   voworks
2014-10   4222   나파이강승훈
2015-10   4222   왕머슴
2017-06   4222   mt22