/�۾���: Guido Socher �۾��� �Ұ�: Guido�� �������� ������ ���̾���. �ֱ� �״� LinuxFocus�� �����ڷ� Ȱ���ϰ� �ִ�. ���� �״� ���� ���Ӱ� �����ϰ� ������ ������� �ٸ� �͵��� �ɾ� Ű��µ� ��ô �ٻڴ�. ����: |
Abstract:
�� ���� Perl�� ���� �������� ù��° ���Դϴ�. �� ���� �б� ���� ������ ���θ� �ؾ� �Ѵٵ��� �� �ʿ�� �����ϴ�. C�� �Ľ�Į�� ���� ������ ���α� �� ���� �ణ�� ������ ������ �ִٸ� Perl�� �� �� ���� ���� �� ���� ���Դϴ�.
Perl�� Larry Wall�� ���� ���ߵ� ��ũ��Ʈ����̴�. �� �ҽ��ڵ�κ��� �ٷ� ����ȴ�.perl�� ���� /usr/local/perl�� ��ġ�Ǿ� �ִ�. perl�� � ������ ���� ������ �� ���н����α��� awk, sed�� ����� �������� �������� �и��ִ�. ���ó� ������ �� ��ü�������α����� �Ѵٰų� �Ǵ� ���Ȼ���� �������̽��� ������ ������ perl�� ����� �� �ִ�. Perl�� ���̺귯���� �̿��ϸ� �� ����� ���� Ȯ���� �� �ִ�. �̷��� ���̺귯������ CPAN�� ��� �����Ǿ� �ִ�. �� �ۿ����� ������ ó���̹Ƿ� ���� �������������� �ٷ��� ���� ���̴�. ���� ��� �⺻���� ������ ���캸�� ���� ������ ������������ �ٷ��� ����.
Perl�� �ſ� ������ ��ũ��Ʈ ����̴�. �ణ�� ���α��� ������ ������ ������ ���� ���� �� �ִ� ������ �����̴�.
���� ���α� �ҽ�(my1stprg)�� ������ ��������
��ǻ�Ϳ� �����ϱ� �ٶ���. ���� ������ ������ �ֱ� ���Ͽ�
chmod 755 my1stprg
������ �����Ѵ�.
���� ������ ���� ������ ���� �ٶ���.
#!/usr/bin/perl -w
print "What is your name?\n"; $name=<STDIN>; #remove the new-line character: chomp($name); $len=length($name); print "\nHello $name! Your name is $len characters long\n"; |
�ڵ带 ���캸��. ù��° ���� ���ɾ �ƴϴ�.
"#!"�� �����ϴ� �ٵ��� ���� ���н� ��ũ��Ʈ�� ù�ٿ� ���Ǹ�
�ü������ �� �ؽ�Ʈ������ ��� �����ؾ� �Ѵٴ� ������ �˷��ش�.
ù°���� �ƴ� ������ #���� �����ϴ� ���� ������ �װ��� �ּ����̴�.(4��° ���� ���� �� �� �ִ�.)
��� ������ �����ݷ����� ������ �Ѵ�. �������� ��($)ǥ�÷� �����Ѵ�.
Perl�� ������ ���ڳ� ����, �ε��Ҽ����� ��� ���� �� �ִ�.
���������� ������ ���� ���뿡 ���� �ڵ����� ������ ������ �ٲ��.
$�� �����ϴ� ������ ��Į���� ����(scalar variable)�̶�� �Ѵ�.
���� $��� @�� �����Ѵٸ� �װ��� �迭�̸� %�� �����ϸ� �ؽ����̺��̴�.
�̷��� �������� ���ؼ��� ����ȸ�� �ڼ��� ���캸���� �ϰڴ�.
�ι�° �ٿ� ���� print�Լ��� ǥ��������� ���ڿ��� ����ϴ� �Լ��̴�.
�� �Լ��� ����ũ��Ʈ���� echo���ɰ� ����ϴ�.
���� ū����ǥ�ȿ� �������� ���Ǿ����� ������ ���簪���� �ٲ��.
��������ǥ���� ������ �� ������ �ٲ��� �ʴ´�.��ǥ�ó� ����ǥ�ȿ� ����ǥ�� ǥ���ϰ��� �� ��쿡�� ���������� �̿��Ѵ�.
���� ���캸��:
#!/usr/bin/perl -w
$name="joe"; print "1 $name\n"; print '2 ', $name , "\n"; print '3 ', '$name',"\n"; print "4 \"$name\"\n"; print "5 \$name\n"; print "6 \"\$name\"\n"; |
����� �̷��� �� ���̴�.:
1 joe
2 joe 3 $name 4 "joe" 5 $name 6 "$name" |
ù��° �������α��� �ٽ� ���캸��. $name=<STDIN>;�ٿ��� ���α��� ����ڰ� ����Ű�� ĥ������ Ű���� �Է�����ٸ� ���̴�. �� �����ٿ� ���� $name���� NL(newline)���ڱ��� ������ ����� �Է°��� ������ �ִ�. chomp($name);�� $name�� �� NL���ڸ� �������ش�. ���������� length�Լ��� $name�� ���ڼ��� �˷��ش�.
�� ���α����� ���װ� �ִ�. �������� �̸� ������ ���̳� ������ �Է��� ���� ���Ѵ�.
�� �۵��ϴ°�? �� ���� ��� ���� �� ������?
���� �̸����� ������ �����ϱ� ���Ͽ� ã���Լ��� �ٲٱ��Լ��� �ʿ��ϴ�.
Perl�� ���ڿ��� ó���ϴ� ����� �ſ� �پ�� �̷��� ����� ��Ȯ�ϰ� ������ �ش�.
[ \t]�� �����̳� ���� ��Ÿ���� ����ǥ�����̴�.
perl������ \s�� �����ϰ� ��Ÿ�� ���� �ִ�.
(���ñ�� : ����ǥ����).
perl�� ��ü������ ����ǥ������ ���ϹǷ� ��������� ������ ������ �ִ�.: $name=~ s/regexp/replacement/g;
���� �������� ��ü������ �״�� ����дٸ� ����ǥ������ �ƹ��͵� ���� ������ ��ġ�Ǵ� ����
ã�Ҵٴ� ��ȣ�� ������ ���̴�.���� ������ ���α��� ������ ����.:
#!/usr/bin/perl -w
print "What is your name?\n"; $name=<STDIN>; #NL���ڸ� �����Ѵ�.: chomp($name); print "\nHello $name!"; #���ڿ����� ������ �����Ѵ�.: $name=~s/\s//g; $len=length($name); print " Your name is $len characters long\n"; |
�� ���α��� ��� ������ if���� ���ǹ��� ��� ���� ������ �ϳ��� ���Ǿ� ���� �ʱ���� ���� ������ ���α��� �ƴϴ�. ���縦 ���Ͽ� �� ���α��� ���ݾ� ������ ���α����� Ȯ����ѳ������� �ϰڴ�.
���� "man perl"�� "man perlfunc"�� ���ؼ� � �Լ��� �̿��� �� �ִ��� ã�ƺ� �� �ִ�. ��� �� �� �ڼ��� �����ϰ� �ʹٸ� O'Reilly�翡�� ���� "Learing Perl"���� �о�� �ٶ���.
���������� ��������Ŀ�� ���������� �����մϴ�.
© Guido Socher LinuxFocus 1999 |