Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
[Photo of the Author]
/�۾���: Guido Socher

�۾��� �Ұ�:

Guido�� �������� ������ ���̾���. �ֱ� �״� LinuxFocus�� �����ڷ� Ȱ���ϰ� �ִ�. ���� �״� ���� ���Ӱ� �����ϰ� ������ ������� �ٸ� �͵��� �ɾ� Ű��µ� ��ô �ٻڴ�.

����:

Perl 1��

[Illustration]

Abstract:

�� ���� Perl�� ���� �������� ù��° ���Դϴ�. �� ���� �б� ���� ������ ���θ� �ؾ� �Ѵٵ��� �� �ʿ�� �����ϴ�. C�� �Ľ�Į�� ���� ������ ���α׷� �� ���� �ణ�� ������ ������ �ִٸ� Perl�� �� �� ���� ���� �� ���� ���Դϴ�.



 

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���� ���ǹ��� ��� ���� ������ �ϳ��� ���Ǿ� ���� �ʱ⶧���� ���� ������ ���α׷��� �ƴϴ�. ���縦 ���Ͽ� �� ���α׷��� ���ݾ� ������ ���α׷����� Ȯ����ѳ������� �ϰڴ�.

 

����

�� ���縦 ���Ͽ� �������� perl�� �ϳ��� �ϳ��� ������ �� ���� ���̴�. �׷��� ���� ������ ���� ���ڶ�� ���� ������(perlref-5.004.1.tar.gz)�� �ٿ�ε�޾Ƽ� �о�� �͵� ������ ���̴�. �� �������� ��� �ִ� README������ �о�� �������� ��� å���� ���·� �μ��� �� �ִ��� ����ִ�.

���� "man perl"�� "man perlfunc"�� ���ؼ� � �Լ��� �̿��� �� �ִ��� ã�ƺ� �� �ִ�. ���⿡ �� �� �ڼ��� �����ϰ� �ʹٸ� O'Reilly�翡�� ���� "Learing Perl"���� �о�� �ٶ���.


���������� ��������Ŀ�� ���������� �����մϴ�.
© Guido Socher
LinuxFocus 1999