Englishํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

perlform - ํด๋ผ์šฐ๋“œ์—์„œ์˜ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ perlform์„ ์‹คํ–‰ํ•˜์„ธ์š”.

์ด๊ฒƒ์€ Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” perlform ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


perlform - Perl ํ˜•์‹

๊ธฐ์ˆ 


Perl์—๋Š” ๊ฐ„๋‹จํ•œ ๋ณด๊ณ ์„œ์™€ ์ฐจํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ด‰์ง„ํ•˜๊ธฐ ์œ„ํ•ด,
Perl์€ ์ถœ๋ ฅ ํŽ˜์ด์ง€๊ฐ€ ์ธ์‡„๋  ๋•Œ์˜ ๋ชจ์–‘๊ณผ ๋น„์Šทํ•˜๊ฒŒ ์ถœ๋ ฅ ํŽ˜์ด์ง€๋ฅผ ์ฝ”๋”ฉํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ
ํŽ˜์ด์ง€์— ๋ช‡ ์ค„์ด ์žˆ๋Š”์ง€, ํ˜„์žฌ ์–ด๋–ค ํŽ˜์ด์ง€์— ์žˆ๋Š”์ง€, ์–ธ์ œ ์ฝ์–ด์•ผ ํ•˜๋Š”์ง€ ๋“ฑ์„ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ํŽ˜์ด์ง€ ํ—ค๋” ์ธ์‡„ ๋“ฑ ํ‚ค์›Œ๋“œ๋Š” FORTRAN์—์„œ ๋นŒ๋ ค์™”์Šต๋‹ˆ๋‹ค. ์ฒด์žฌ() ์„ ์–ธํ•˜๊ณ 
์“ฐ๋‹ค() ์‹คํ–‰ํ•˜๋‹ค; perlfunc์˜ ํ•ญ๋ชฉ์„ ์ฐธ์กฐํ•˜์„ธ์š”. ๋‹คํ–‰ํžˆ ๋ ˆ์ด์•„์›ƒ์ด ํ›จ์”ฌ ๋” ๋งŽ์Šต๋‹ˆ๋‹ค.
์ฝ๊ธฐ ์‰ฝ๊ณ  BASIC์˜ PRINT USING ๋ฌธ๊ณผ ๋น„์Šทํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๋‚œํ•œ ์‚ฌ๋žŒ์˜ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์„ธ์š” ๋…ธํ”„(1).

ํŒจํ‚ค์ง€ ๋ฐ ์„œ๋ธŒ๋ฃจํ‹ด๊ณผ ๊ฐ™์€ ํ˜•์‹์€ ์‹คํ–‰๋˜์ง€ ์•Š๊ณ  ์„ ์–ธ๋˜๋ฏ€๋กœ
ํ”„๋กœ๊ทธ๋žจ์˜ ์–ด๋Š ์ง€์ ์—์„œ๋‚˜ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. (๋ณดํ†ต์€ ๋ชจ๋‘ ํ•จ๊ป˜ ๋ณด๊ด€ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.)
Perl์˜ ๋‹ค๋ฅธ ๋ชจ๋“  "์œ ํ˜•"๊ณผ๋Š” ๋ณ„๊ฐœ๋กœ ๊ณ ์œ ํ•œ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋‹ค์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
"Foo"๋ผ๋Š” ์ด๋ฆ„์˜ ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ด๋ฆ„์ด "Foo"์ธ ํ˜•์‹์„ ๊ฐ–๋Š” ๊ฒƒ๊ณผ๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
"ํ‘ธ". ๊ทธ๋Ÿฌ๋‚˜ ํŠน์ • ํŒŒ์ผ ํ•ธ๋“ค๊ณผ ๊ด€๋ จ๋œ ํ˜•์‹์˜ ๊ธฐ๋ณธ ์ด๋ฆ„์€
ํŒŒ์ผ ํ•ธ๋“ค์˜ ์ด๋ฆ„๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ STDOUT์˜ ๊ธฐ๋ณธ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
"STDOUT"์ด๊ณ  ํŒŒ์ผ ํ•ธ๋“ค TEMP์˜ ๊ธฐ๋ณธ ํ˜•์‹ ์ด๋ฆ„์€ "TEMP"์ž…๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๋‹จ์ง€
๊ฐ™์€. ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ถœ๋ ฅ ๋ ˆ์ฝ”๋“œ ํ˜•์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ ์–ธ๋ฉ๋‹ˆ๋‹ค.

ํ˜•์‹ ์ด๋ฆ„ =
์–‘์‹ ๋ชฉ๋ก
.

์ด๋ฆ„์ด ์ƒ๋žต๋˜๋ฉด "STDOUT" ํ˜•์‹์ด ์ •์˜๋ฉ๋‹ˆ๋‹ค. ์‹ฑ๊ธ€ "." ์—ด 1์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
ํฌ๋งท์„ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค. FORMLIST๋Š” ์ผ๋ จ์˜ ํ–‰์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ ๊ฐ ํ–‰์€ ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์„ธ ๊ฐ€์ง€ ์œ ํ˜•:

1. ์ฒซ ๋ฒˆ์งธ ์—ด์— '#'์„ ๋„ฃ์–ด ํ‘œ์‹œํ•˜๋Š” ์ฃผ์„์ž…๋‹ˆ๋‹ค.

2. ํ•˜๋‚˜์˜ ์ถœ๋ ฅ ๋ผ์ธ์— ๋Œ€ํ•œ ํ˜•์‹์„ ์ œ๊ณตํ•˜๋Š” "๊ทธ๋ฆผ" ๋ผ์ธ.

3. ์ด์ „ ๊ทธ๋ฆผ ์ค„์— ์—ฐ๊ฒฐํ•  ๊ฐ’์„ ์ œ๊ณตํ•˜๋Š” ์ธ์ˆ˜ ์ค„.

๊ทธ๋ฆผ ์ค„์—๋Š” ๋ฆฌํ„ฐ๋Ÿด ํ…์ŠคํŠธ์™€ ํ˜ผํ•ฉ๋œ ์ถœ๋ ฅ ํ•„๋“œ ์ •์˜๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ๋“ค
์„ ์€ ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋ณ€์ˆ˜ ๋ณด๊ฐ„๋„ ๊ฑฐ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•„๋“œ ์ •์˜๊ฐ€ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
ํ•„๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์›ํ•˜๋Š” ๋„ˆ๋น„๋กœ ํ™•์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฌธ์ž ์ง‘ํ•ฉ์—์„œ. ์ด๊ฒƒ์€
ํ•„๋“œ ์ •์˜์— ๋Œ€ํ•œ ์ „์ฒด ๋ฌธ์ž ์„ธํŠธ:

@ ์ผ๋ฐ˜ ํ•„๋“œ์˜ ์‹œ์ž‘
^ ํŠน์ˆ˜ ํ•„๋“œ์˜ ์‹œ์ž‘
< ์™ผ์ชฝ ๋งž์ถค์„ ์œ„ํ•œ ํŒจ๋“œ ๋ฌธ์ž
| ์„ผํ„ฐ๋ง์„ ์œ„ํ•œ ํŒจ๋“œ ๋ฌธ์ž
> ์˜ค๋ฅธ์ชฝ ๋งž์ถค์„ ์œ„ํ•œ ํŒจ๋“œ ๋ฌธ์ž
# ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ •๋ ฌ๋œ ์ˆซ์ž ํ•„๋“œ์˜ ํŒจ๋“œ ๋ฌธ์ž
์ฒซ ๋ฒˆ์งธ # ๋Œ€์‹  0: ์•ž์— XNUMX์ด ์žˆ๋Š” ํŒจ๋“œ ๋ฒˆํ˜ธ
. ์ˆซ์ž ํ•„๋“œ ๋‚ด์˜ ์†Œ์ˆ˜์ 
... ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  "..."๋ฅผ ์ž˜๋ฆผ ์ฆ๊ฑฐ๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
@* ์—ฌ๋Ÿฌ ์ค„ ๊ฐ’์— ๋Œ€ํ•œ ๊ฐ€๋ณ€ ๋„ˆ๋น„ ํ•„๋“œ
^* ์—ฌ๋Ÿฌ ์ค„ ๊ฐ’์˜ ๋‹ค์Œ ์ค„์— ๋Œ€ํ•œ ๊ฐ€๋ณ€ ๋„ˆ๋น„ ํ•„๋“œ
~ ๋ชจ๋“  ํ•„๋“œ๊ฐ€ ๋น„์–ด ์žˆ๋Š” ์ค„์„ ์–ต์ œํ•ฉ๋‹ˆ๋‹ค.
~~ ๋ชจ๋“  ํ•„๋“œ๊ฐ€ ์†Œ์ง„๋  ๋•Œ๊นŒ์ง€ ๋ผ์ธ์„ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆผ ์ค„์˜ ๊ฐ ํ•„๋“œ๋Š” "@"(at) ๋˜๋Š” "^"(์บ๋Ÿฟ)์œผ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
๊ฐ๊ฐ "์ผ๋ฐ˜" ๋˜๋Š” "ํŠน์ˆ˜" ํ•„๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ํŒจ๋“œ ๋ฌธ์ž ์„ ํƒ
ํ•„๋“œ๊ฐ€ ํ…์ŠคํŠธ์ธ์ง€ ์ˆซ์ž์ธ์ง€ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๊ฒฐํ‘œ ์—ฐ์‚ฐ์ž๋Š”
ํ•„๋“œ. ๋‹ค์–‘ํ•œ ๊ฐ€๋Šฅ์„ฑ์„ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ณธ๋ฌธ Fields
ํ•„๋“œ์˜ ๊ธธ์ด๋Š” ํ•„๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ "<", ">" ๋˜๋Š”
"|" ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ํ•„๋“œ๋ฅผ ๊ฐ๊ฐ ์™ผ์ชฝ ๋งž์ถค์œผ๋กœ ์ง€์ •ํ•˜๋Š” ๋ฌธ์ž
์˜ค๋ฅธ์ชฝ ๋งž์ถค ๋˜๋Š” ์„ผํ„ฐ๋ง. ์ผ๋ฐ˜ ํ•„๋“œ์˜ ๊ฒฝ์šฐ ๊ฐ’(์ฒซ ๋ฒˆ์งธ
๊ฐœํ–‰)์€ ์„ ํƒ๋œ ์ •๋ ฌ์— ๋”ฐ๋ผ ์„ ํƒ๋˜์–ด ์ธ์‡„๋˜๋ฉฐ ์ดˆ๊ณผ๋ถ„์€ ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค.
๋ฌธ์ž. "..."๋กœ ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ์ข…๋ฃŒํ•˜๋ฉด ์„ธ ๊ฐœ์˜ ์ ์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
๊ฐ’์ด ์ž˜๋ฆฝ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์—ฌ๋Ÿฌ ์ค„ ํ…์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ํŠน์ˆ˜ ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ธ”๋ก ์ฑ„์šฐ๊ธฐ; ์ž์„ธํ•œ ๋‚ด์šฉ์€ "์ฑ„์šฐ๊ธฐ ๋ชจ๋“œ ์‚ฌ์šฉ"์„ ์ฐธ์กฐํ•˜์„ธ์š”.

์˜ˆ:
ํ˜•์‹ STDOUT =
@<<<<<< @|||||| @>>>>>>
"์™ผ์ชฝ", "๊ฐ€์šด๋ฐ", "์˜ค๋ฅธ์ชฝ"
.
์ถœ๋ ฅ:
์™ผ์ชฝ ์ค‘๊ฐ„ ์˜ค๋ฅธ์ชฝ

์ˆซ์ž Fields
ํŒจ๋”ฉ ๋ฌธ์ž๋กœ "#"์„ ์‚ฌ์šฉํ•˜๋ฉด ์˜ค๋ฅธ์ชฝ ๋งž์ถค์œผ๋กœ ์ˆซ์ž ํ•„๋“œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์•ˆ
์„ ํƒ์  "." ์†Œ์ˆ˜์  ์œ„์น˜๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹ ์— "0"(์˜)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ฒซ ๋ฒˆ์งธ "#", ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์„œ์‹์ด ์ง€์ •๋œ ์ˆซ์ž ์•ž์— XNUMX์ด ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. ใ…
๊ฐ’์ด ์ •์˜๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ํŠน์ˆ˜ ์ˆซ์ž ํ•„๋“œ๋Š” ๊ณต๋ฐฑ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ๊ฐ’์ด ๋‚˜์˜ค๋ฉด
์ง€์ •๋œ ๋„ˆ๋น„๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ํ•„๋“œ๊ฐ€ ์˜ค๋ฒ„ํ”Œ๋กœ ์ฆ๊ฑฐ๋กœ "#"์œผ๋กœ ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค.

์˜ˆ:
ํ˜•์‹ STDOUT =
@### @.### @##.### @### @### ^####
42, 3.1415, ์ •์˜๋˜์ง€ ์•Š์€, 0, 10000, ์ •์˜๋˜์ง€ ์•Š์€
.
์ถœ๋ ฅ:
42 3.142 0.000 0 ####

์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ถ„์•ผ @* for ๊ฐ€๋ณ€ ๋„ˆ๋น„ ๋ฉ€ํ‹ฐ ๋ผ์ธ ๋ณธ๋ฌธ
"@*" ํ•„๋“œ๋Š” ์ž˜๋ฆฌ์ง€ ์•Š์€ ๊ฐ’์„ ์—ฌ๋Ÿฌ ์ค„๋กœ ์ธ์‡„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์•ผ ํ•œ๋‹ค(๊ทธ๋Ÿฌ๋‚˜
ํ•„์š”ํ•˜์ง€ ์•Š์Œ)์€ ํ•œ ์ค„์— ๊ทธ ์ž์ฒด๋กœ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ์ค„ ๋ฐ”๊ฟˆ์ด ์ž˜๋ ค์กŒ์ง€๋งŒ ๋‹ค๋ฅธ ๋ชจ๋“  ํ•ญ๋ชฉ์€
๋ฌธ์ž๋Š” ๊ทธ๋Œ€๋กœ ๋ฐฉ์ถœ๋ฉ๋‹ˆ๋‹ค.

์ด ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” XNUMXยตm ๋ฐ XNUMXยตm ํŒŒ์žฅ์—์„œ ์ตœ๋Œ€ XNUMXW์˜ ํ‰๊ท  ์ถœ๋ ฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ถ„์•ผ ^* for ๊ฐ€๋ณ€ ๋„ˆ๋น„ ํ•œ ๋ฒˆ์— ํ•œ ์ค„ ๋ณธ๋ฌธ
"@*"์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๊ฐ€๋ณ€ ๋„ˆ๋น„ ํ•„๋“œ์ž…๋‹ˆ๋‹ค. ์ œ๊ณต๋œ ๊ฐ’์€ ์Šค์นผ๋ผ ๋ณ€์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
Perl์€ ํ…์ŠคํŠธ์˜ ์ฒซ ๋ฒˆ์งธ ์ค„(์ฒซ ๋ฒˆ์งธ "\n"๊นŒ์ง€)์„ ํ•„๋“œ์— ๋„ฃ์€ ๋‹ค์Œ ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค.
๋‹ค์Œ๋ฒˆ์— ๋ณ€์ˆ˜๊ฐ€ ์ฐธ์กฐ๋  ๋•Œ ๋” ๋งŽ์€ ๋‚ด์šฉ์ด ํฌํ•จ๋˜๋„๋ก ๋ฌธ์ž์—ด ์•ž์—์„œ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
ํ…์ŠคํŠธ๋ฅผ ์ธ์‡„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ€์ˆ˜๋Š” ์ง€์› ๋ณต์›๋ฉ๋‹ˆ๋‹ค.

์˜ˆ:
$text = "1ํ–‰\n2ํ–‰\n3ํ–‰";
ํ˜•์‹ STDOUT =
ํ…์ŠคํŠธ: ^*
$text
~~ ^*
$text
.
์ถœ๋ ฅ:
ํ…์ŠคํŠธ: 1ํ–‰
๋ผ์ธ 2
๋ผ์ธ 3

์ง€์ • ๋งˆ์ผ€ํŒ…์€:
๊ฐ’์€ ๊ทธ๋ฆผ๊ณผ ๋™์ผํ•œ ์ˆœ์„œ๋กœ ๋‹ค์Œ ํ˜•์‹ ์ค„์— ์ง€์ •๋ฉ๋‹ˆ๋‹ค.
ํ•„๋“œ. ๊ฐ’์„ ์ œ๊ณตํ•˜๋Š” ํ‘œํ˜„์‹์€ ์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๋ชจ๋‘
ํ–‰์ด ์ฒ˜๋ฆฌ๋˜๊ธฐ ์ „์— ๋ชฉ๋ก ์ปจํ…์ŠคํŠธ์—์„œ ํ‰๊ฐ€๋˜๋ฏ€๋กœ ๋‹จ์ผ ๋ชฉ๋ก ํ‘œํ˜„์‹
์—ฌ๋Ÿฌ ๋ชฉ๋ก ์š”์†Œ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‘œํ˜„์€ ๋‘˜ ์ด์ƒ์œผ๋กœ ํผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ค‘๊ด„ํ˜ธ๋กœ ๋ฌถ์ธ ๊ฒฝ์šฐ ์ค„์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์—ฌ๋Š” ์ค‘๊ด„ํ˜ธ๋Š” ์ฒซ ๋ฒˆ์งธ ํ† ํฐ์˜ ์ฒซ ๋ฒˆ์งธ ํ† ํฐ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
์„ . ํ‘œํ˜„์‹์ด ์†Œ์ˆ˜ ๋ถ€๋ถ„์ด ์žˆ๋Š” ์ˆซ์ž๋กœ ํ‰๊ฐ€๋˜๋Š” ๊ฒฝ์šฐ
ํ•ด๋‹น ๊ทธ๋ฆผ์€ ์†Œ์ˆ˜ ๋ถ€๋ถ„์ด ์ถœ๋ ฅ์— ๋‚˜ํƒ€๋‚˜๋„๋ก ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค(์ฆ‰,
์—ฌ๋Ÿฌ ๊ฐœ์˜ "#" ๋ฌธ์ž๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ๊ทธ๋ฆผ์ž…๋‹ˆ๋‹ค. ์—†์ด ํฌํ•จ๋œ "."), ๋ฌธ์ž
"๋กœ์ผ€์ผ ์‚ฌ์šฉ"์ธ ๊ฒฝ์šฐ ์†Œ์ˆ˜์ ์— ์‚ฌ์šฉ๋˜๋Š” ๊ฐ’์€ ํ˜„์žฌ LC_NUMERIC ๋กœ์ผ€์ผ์— ์˜ํ•ด ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.
์œ ํšจํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด ๋Ÿฐํƒ€์ž„ ํ™˜๊ฒฝ์ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
๋…์ผ์–ด ๋กœ์ผ€์ผ์„ ์ง€์ •ํ•˜๋ฉด ๊ธฐ๋ณธ "." ๋Œ€์‹  ","๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. perlllocale ๋ฐ
์ž์„ธํ•œ ๋‚ด์šฉ์€ "๊ฒฝ๊ณ "๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์‚ฌ์šฉ ์ž‘์„ฑ ๋ชจ๋“œ
ํ…์ŠคํŠธ ํ•„๋“œ์—์„œ ์บ๋Ÿฟ์€ ์ผ์ข…์˜ ์ฑ„์šฐ๊ธฐ ๋ชจ๋“œ๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ž„์˜์ ์ธ ํ‘œํ˜„ ๋Œ€์‹ ,
์ œ๊ณต๋œ ๊ฐ’์€ ํ…์ŠคํŠธ ๋ฌธ์ž์—ด์„ ํฌํ•จํ•˜๋Š” ์Šค์นผ๋ผ ๋ณ€์ˆ˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. Perl์€
ํ…์ŠคํŠธ์˜ ๋‹ค์Œ ๋ถ€๋ถ„์„ ํ•„๋“œ์— ๋„ฃ์€ ๋‹ค์Œ ๋ฌธ์ž์—ด ์•ž ๋ถ€๋ถ„์„ ์ž˜๋ผ์„œ
๋‹ค์Œ์— ๋ณ€์ˆ˜๊ฐ€ ์ฐธ์กฐ๋  ๋•Œ ๋” ๋งŽ์€ ํ…์ŠคํŠธ๊ฐ€ ์ธ์‡„๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (์˜ˆ,
์ด๋Š” ๋ณ€์ˆ˜ ์ž์ฒด๊ฐ€ ์‹คํ–‰ ์ค‘์— ๋ณ€๊ฒฝ๋จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์“ฐ๋‹ค() ์ „ํ™”ํ•˜๊ณ ,
๋ณต์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.) ํ…์ŠคํŠธ์˜ ๋‹ค์Œ ๋ถ€๋ถ„์€ ๋Œ€๋žต์ ์ธ ์ค„๋ฐ”๊ฟˆ์œผ๋กœ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.
์—ฐ์‚ฐ. ์ค„ ๋ฐ”๊ฟˆ์„ ๊ฐ•์ œ๋กœ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด ์บ๋ฆฌ์ง€ ๋ฆฌํ„ด ๋ฌธ์ž("\r")๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
$: ๋ณ€์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ์ค‘๋‹จํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.
์˜์–ด ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ $FORMAT_LINE_BREAK_CHARACTERS)๋ฅผ ์›ํ•˜๋Š” ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•˜์„ธ์š”.
์ž.

์ผ๋ฐ˜์ ์œผ๋กœ ๋™์ผํ•œ ํ•„๋“œ์™€ ์—ฐ๊ด€๋œ ์ˆ˜์ง ์Šคํƒ์˜ ์ผ๋ จ์˜ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
์Šค์นผ๋ผ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…์ŠคํŠธ ๋ธ”๋ก์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค. ๋งˆ์ง€๋ง‰ ํ•„๋“œ๋ฅผ ๋‹ค์Œ์œผ๋กœ ๋๋‚ด๊ณ  ์‹ถ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
ํ…์ŠคํŠธ๊ฐ€ ๋„ˆ๋ฌด ๊ธธ์–ด์„œ ์ถœ๋ ฅ์— ํ‘œ์‹œ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์ถœ๋ ฅ์— ํ‘œ์‹œ๋˜๋Š” ํ…์ŠคํŠธ "..."
์ „์ฒด.

์–ต์ œ ์„  ์–ด๋””์— All Fields ์ธ๊ฐ€ ๋นˆ
์บ๋Ÿฟ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ชจ๋“  ํ•„๋“œ๊ฐ€ ๋น„์–ด ์žˆ๋Š” ์ค„์ด ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๊ฒƒ์„ ์–ต์ œํ•  ์ˆ˜ ์žˆ์–ด์š”
์ค„์˜ ์•„๋ฌด ๊ณณ์—๋‚˜ "~"(๋ฌผ๊ฒฐํ‘œ) ๋ฌธ์ž๋ฅผ ๋„ฃ์–ด ์ค„์„ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค. ๋ฌผ๊ฒฐํ‘œ๋Š”
์ถœ๋ ฅ ์‹œ ๊ณต๋ฐฑ์œผ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค.

๋ฐ˜๋ณต ์ •๋ฐ€๋„ ํ˜•์„ฑ ์„ 
๋‘ ๊ฐœ์˜ ์ธ์ ‘ํ•œ ๋ฌผ๊ฒฐํ‘œ ๋ฌธ์ž "~~"๋ฅผ ํ•œ ์ค„์˜ ์•„๋ฌด ๊ณณ์—๋‚˜ ๋„ฃ์œผ๋ฉด ๊ทธ ์ค„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
๋ผ์ธ์˜ ๋ชจ๋“  ํ•„๋“œ๊ฐ€ ์†Œ์ง„๋  ๋•Œ๊นŒ์ง€, ์ฆ‰ ์ •์˜๋˜์ง€ ์•Š์„ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต๋ฉ๋‹ˆ๋‹ค. ํŠน๋ณ„ํ•œ ๊ฒฝ์šฐ
(์บ๋Ÿฟ) ํ…์ŠคํŠธ ํ•„๋“œ๋Š” ์กฐ๋งŒ๊ฐ„ ๋ฐœ์ƒํ•˜์ง€๋งŒ at์˜ ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ
๋‹ค์–‘์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ํ‘œํ˜„์€ ์˜์›ํžˆ ๋™์ผํ•œ ๊ฐ’์„ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค!
("shift(@f)"๋Š” ์ž‘๋™ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ์˜ˆ์ž…๋‹ˆ๋‹ค.) ์ผ๋ฐ˜ (at) ์ˆซ์ž ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.
๊ทธ๋Ÿฐ ์ค„์—๋Š” ๊ฒฐ์ฝ” ๊ณต๋ฐฑ์ด ์ƒ๊ธฐ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

Top of ํ˜•ํƒœ ์ฒ˜๋ฆฌ
์–‘์‹ ์ƒ๋‹จ ์ฒ˜๋ฆฌ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ํ˜„์žฌ์™€ ๋™์ผํ•œ ์ด๋ฆ„์„ ๊ฐ€์ง„ ํ˜•์‹์œผ๋กœ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค.
"_TOP"์ด ์—ฐ๊ฒฐ๋œ ํŒŒ์ผ ํ•ธ๋“ค์ž…๋‹ˆ๋‹ค. ๊ฐ ํŽ˜์ด์ง€ ์ƒ๋‹จ์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋ณด๋‹ค
perlfunc๋กœ "์“ฐ๊ธฐ".

์˜ˆ :

#์— ๋Œ€ํ•œ ๋ณด๊ณ ์„œ / etc / passwd ํŒŒ์ผ
STDOUT_TOP ํ˜•์‹ =
๋น„๋ฐ€๋ฒˆํ˜ธ ํŒŒ์ผ
์ด๋ฆ„ ๋กœ๊ทธ์ธ ์‚ฌ๋ฌด์‹ค Uid Gid ํ™ˆ
-------------------------------------------------- ----------------
.
ํ˜•์‹ STDOUT =
@<<<<<<<<<<<<<<<<< @||||||| @<<<<<<@>>>> @>>>> @<<<<<<<<<<<<<<<
$name, $login, $office,$uid,$gid, $home
.

# ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ ์–‘์‹์˜ ๋ณด๊ณ ์„œ
STDOUT_TOP ํ˜•์‹ =
๋ฒ„๊ทธ ๋ฆฌํฌํŠธ
@<<<<<<<<<<<<<<<<<<<<< @||| @>>>>>>>>>>>>>>>>>>>>>>>
$์‹œ์Šคํ…œ, $%, $๋‚ ์งœ
-------------------------------------------------- ----------------
.
ํ˜•์‹ STDOUT =
์ œ๋ชฉ: @<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<
$ subject
์ƒ‰์ธ : @<<<<<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<< <<<<<<<<<
$์ธ๋ฑ์Šค, $์„ค๋ช…
์šฐ์„ ์ˆœ์œ„: @<<<<<<<<<< ๋‚ ์งœ: @<<<<<<< ^<<<<<<<<<<<<<<<<<<<<<<< <
$์šฐ์„ ์ˆœ์œ„, $๋‚ ์งœ, $์„ค๋ช…
๋ณด๋‚ธ ์‚ฌ๋žŒ: @<<<<<<<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<< <<<<<<<<<<
$์ถœ์ฒ˜, $์„ค๋ช…
ํ• ๋‹น ๋Œ€์ƒ: @<<<<<<<<<<<<<<<<<<< ^<<<<<<<<<<<<<<<<<<<< <<<<
$ํ”„๋กœ๊ทธ๋ž˜๋จธ, $์„ค๋ช…
~ ^<<<<<<<<<<<<<<<<<<<<<<<<
$์„ค๋ช…
~ ^<<<<<<<<<<<<<<<<<<<<<<<<
$์„ค๋ช…
~ ^<<<<<<<<<<<<<<<<<<<<<<<<
$์„ค๋ช…
~ ^<<<<<<<<<<<<<<<<<<<<<<<<
$์„ค๋ช…
~ ^<<<<<<<<<<<<<<<<<<<<<...
$์„ค๋ช…
.

ํ˜ผ์šฉ์ด ๊ฐ€๋Šฅํ•ด์š” ์ธ์‡„()์˜๊ณผ ์“ฐ๋‹ค()๋™์ผํ•œ ์ถœ๋ ฅ ์ฑ„๋„์— ์žˆ์ง€๋งŒ
"$-"($FORMAT_LINES_LEFT)๋ฅผ ์ง์ ‘ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ˜•์„ฑ ๋ณ€์ˆ˜
ํ˜„์žฌ ํ˜•์‹ ์ด๋ฆ„์€ $~($FORMAT_NAME) ๋ณ€์ˆ˜์— ์ €์žฅ๋˜๋ฉฐ, ํ˜„์žฌ ์ตœ์ƒ์œ„
์–‘์‹ ํ˜•์‹ ์ด๋ฆ„์€ $^($FORMAT_TOP_NAME)์— ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์ถœ๋ ฅ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ๊ฐ€ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
$%($FORMAT_PAGE_NUMBER)์ด๊ณ  ํŽ˜์ด์ง€์˜ ์ค„ ์ˆ˜๋Š” $=์ž…๋‹ˆ๋‹ค.
($FORMAT_LINES_PER_PAGE). ์ด ํ•ธ๋“ค์˜ ์ถœ๋ ฅ์„ ์ž๋™ ํ”Œ๋Ÿฌ์‹œํ• ์ง€ ์—ฌ๋ถ€๋Š” $|
($OUTPUT_AUTOFLUSH). ํŽ˜์ด์ง€์˜ ๊ฐ ์ƒ๋‹จ(์ฒซ ๋ฒˆ์งธ ํŽ˜์ด์ง€ ์ œ์™ธ) ์•ž์˜ ๋ฌธ์ž์—ด ์ถœ๋ ฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
$^L($FORMAT_FORMFEED)์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ณ€์ˆ˜๋Š” ํŒŒ์ผ ํ•ธ๋“ค๋ณ„๋กœ ์„ค์ •๋˜๋ฏ€๋กœ
๋„ˆ๋Š” ~ํ•ด์•ผ ํ•ด. ๊ณ ๋ฅด๋‹ค() ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค:

์„ ํƒ((์„ ํƒ(OUTF),
$~ = "๋‚ด_๊ธฐํƒ€_ํ˜•์‹",
$^ = "๋‚ด_์ƒ์œ„_ํ˜•์‹"
)[0]);

๊ฝค ๋ชป ์ƒ๊ฒผ์ฃ ? ํ•˜์ง€๋งŒ ์ด๋Š” ์ผ๋ฐ˜์ ์ธ ๊ด€์šฉ์–ด์ด๋ฏ€๋กœ ๋ณผ ๋•Œ ๋„ˆ๋ฌด ๋†€๋ผ์ง€ ๋งˆ์„ธ์š”.
์ตœ์†Œํ•œ ์ž„์‹œ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์ „ ํŒŒ์ผ ํ•ธ๋“ค์„ ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ผ๋ฐ˜์ ์œผ๋กœ ๋” ๋‚˜์€ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐ€๋…์„ฑ์ด ํ–ฅ์ƒ๋  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด์ œ
๋””๋ฒ„๊ฑฐ๋ฅผ ๋‹จ์ผ ๋‹จ๊ณ„๋กœ ์ง„ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ํ‘œํ˜„์‹์˜ ์ค‘๊ฐ„ ๋‹จ๊ณ„):

$ofh = ์„ ํƒ(OUTF);
$~ = "๋‚ด_๊ธฐํƒ€_ํ˜•์‹";
$^ = "๋‚ด_์ƒ์œ„_ํ˜•์‹";
์„ ํƒ($ofh);

์˜์–ด ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ณ€์ˆ˜ ์ด๋ฆ„๋„ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค;
$ofh = ์„ ํƒ(OUTF);
$FORMAT_NAME = "๋‚ด_๊ธฐํƒ€_ํ˜•์‹";
$FORMAT_TOP_NAME = "๋‚ด_์ƒ์œ„_ํ˜•์‹";
์„ ํƒ($ofh);

ํ•˜์ง€๋งŒ ์•„์ง๋„ ๊ทธ๋Ÿฐ ์›ƒ๊ธด ์ผ์ด ์žˆ์ž–์•„ ๊ณ ๋ฅด๋‹ค()์—์Šค. ๋”ฐ๋ผ์„œ FileHandle ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ์ด์ œ ๋‹น์‹ ์€
๋Œ€์‹  ์†Œ๋ฌธ์ž ๋ฉ”์„œ๋“œ ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด๋Ÿฌํ•œ ํŠน์ˆ˜ ๋ณ€์ˆ˜์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

FileHandle์„ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
format_name OUTF "๋‚ด_๊ธฐํƒ€_ํ˜•์‹";
format_top_name OUTF "My_Top_Format";

ํ›จ์”ฌ ๋‚ซ๋‹ค!

๋…ธํŠธ


๊ฐ’ ํ–‰์—๋Š” ์ž„์˜์˜ ํ‘œํ˜„์‹์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ(์บ๋Ÿฟ์ด ์•„๋‹Œ at ํ•„๋“œ์˜ ๊ฒฝ์šฐ)
ํ•„๋“œ), ๋ณด๋‹ค ์ •๊ตํ•œ ์ฒ˜๋ฆฌ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. sprintf ()
์•„๋‹ˆ๋ฉด ๋‹น์‹  ์ž์‹ ์˜ ๊ฒƒ ์ค‘ ํ•˜๋‚˜. ์˜ˆ๋ฅผ ๋“ค์–ด:

ํ˜•์‹ ID =
@<<<<<<<<<<<<<
&commify($n)
.

ํ•„๋“œ์— ์‹ค์ œ at ๋˜๋Š” ์บ๋Ÿฟ์„ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์‹ญ์‹œ์˜ค.

ํ˜•์‹ ID =
์—ฌ๊ธฐ์— @๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
"@"
.

์ „์ฒด ํ…์ŠคํŠธ ์ค„์„ ์ค‘์•™์— ๋งž์ถ”๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•˜์‹ญ์‹œ์˜ค:

ํ˜•์‹ ID =
@|||||||||||||||||||||||||||||||||||||||||
"์ผ๋ถ€ ํ…์ŠคํŠธ ์ค„"
.

"์ด๊ฒƒ์„ ํŽ˜์ด์ง€์˜ ์˜ค๋ฅธ์ชฝ์— ๋„์šฐ์„ธ์š”. ํ•˜์ง€๋งŒ"์ด๋ผ๊ณ  ๋งํ•˜๋Š” ๋‚ด์žฅ๋œ ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค.
ํญ์ด ๋„“์Šต๋‹ˆ๋‹ค." ๊ทธ๊ฒƒ์ด ์–ด๋””๋กœ ๊ฐ€๋Š”์ง€ ์ง€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ •๋ง๋กœ ์ ˆ๋ฐ•ํ•œ ์‚ฌ๋žŒ์€
ํ˜„์žฌ ์—ด ์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ฆ‰์„์—์„œ ์ž์ฒด ํ˜•์‹์„ ๋งŒ๋“  ๋‹ค์Œ eval () ๊ทธ๊ฒƒ์€ :

$format = "STDOUT ํ˜•์‹ = \n"
. '^' . '<' x $cols . "\N"
. '$ ํ•ญ๋ชฉ' . "\N"
. "\t^" . "<" x ($cols-8) . "~~\n"
. '$ ํ•ญ๋ชฉ' . "\N"
. ".\N";
$Debugging์ธ ๊ฒฝ์šฐ $format์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.
ํ‰๊ฐ€ $ ํ˜•์‹;
$@์ธ ๊ฒฝ์šฐ $@ ์ฃฝ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ˜•์‹ STDOUT =
^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<
$entry
^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <~~
$entry
.

์—ฌ๊ธฐ ์•ฝ๊ฐ„ ๋น„์Šทํ•œ ์ž‘์€ ํ”„๋กœ๊ทธ๋žจ์ด ์žˆ์Šต๋‹ˆ๋‹ค. fmt(1) :

ํ˜•์‹ =
^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ~~
$_

.

$/ = '';
๋™์•ˆ(<>) {
s/\s*\n\s*/ /g;
์“ฐ๋‹ค;
}

๋ฐ”๋‹ฅ ๊ธ€
$FORMAT_TOP_NAME์—๋Š” ํ˜„์žฌ ํ—ค๋” ํ˜•์‹์˜ ์ด๋ฆ„์ด ํฌํ•จ๋˜์–ด ์žˆ์ง€๋งŒ
๋ฐ”๋‹ฅ๊ธ€์— ๋Œ€ํ•ด ๋™์ผํ•œ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๋Š” ํ•ด๋‹น ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅด๊ณ 
ํฐ ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜๋Š” ํ‰๊ฐ€ํ•  ๋•Œ๊นŒ์ง€ ํฐ ํ˜•์‹์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ผœ์กŒ ์–ด
ํ•ด์•ผ ํ•  ์ผ๋ฆฌ์ŠคํŠธ.

ํ•œ ๊ฐ€์ง€ ์ „๋žต์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ณ ์ • ํฌ๊ธฐ ๋ฐ”๋‹ฅ๊ธ€์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์„ ํƒํ•˜์—ฌ ๋ฐ”๋‹ฅ๊ธ€์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ ์•ž์— $FORMAT_LINES_LEFT ์“ฐ๋‹ค() ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋ฐ”๋‹ฅ๊ธ€์„ ์ง์ ‘ ์ธ์‡„ํ•˜์„ธ์š”.

์—ฌ๊ธฐ์— ๋˜ ๋‹ค๋ฅธ ์ „๋žต์ด ์žˆ์Šต๋‹ˆ๋‹ค: "open(MYSELF, "|-")"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž์‹ ์— ๋Œ€ํ•œ ํŒŒ์ดํ”„๋ฅผ ์—ฝ๋‹ˆ๋‹ค("open" ์ฐธ์กฐ).
perlfunc์—์„œ) ๊ทธ๋ฆฌ๊ณ  ํ•ญ์ƒ ์“ฐ๋‹ค() STDOUT ๋Œ€์‹  MYSELF๋กœ. ์ž๋…€์—๊ฒŒ ๊ณผ์ •์„ ๊ฑฐ์น˜๊ฒŒ ํ•˜์„ธ์š”
์›ํ•˜๋Š” ๋Œ€๋กœ ๋จธ๋ฆฌ๊ธ€๊ณผ ๋ฐ”๋‹ฅ๊ธ€์„ ์žฌ์ •๋ ฌํ•˜๋ ค๋ฉด STDIN์„ ๋งˆ์‚ฌ์ง€ํ•˜์„ธ์š”. ๋ณ„๋กœ ํŽธ๋ฆฌํ•˜์ง€๋„ ์•Š๊ณ ,
ํ•˜์ง€๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์•ก์„ธ์Šค ์„œ์‹ ๋‚ด๋ถ€
์„œ์‹ ๋ฉ”์ปค๋‹ˆ์ฆ˜์— ๋Œ€ํ•œ ๋‚ฎ์€ ์ˆ˜์ค€์˜ ์•ก์„ธ์Šค๋ฅผ ์œ„ํ•ด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜•์‹๋ผ์ธ() $^A์— ์•ก์„ธ์Šคํ•˜์„ธ์š”.
($ACCUMULATOR ๋ณ€์ˆ˜)๋ฅผ ์ง์ ‘์ ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ :

$str = ํ˜•์‹๋ผ์ธ <<'END', 1,2,3;
@<<< @||| @>>>
END

print "์™€, ๋ฐฉ๊ธˆ ๋ˆ„์‚ฐ๊ธฐ์— '$^A'๋ฅผ ์ €์žฅํ–ˆ์Šต๋‹ˆ๋‹ค!\n";

์•„๋‹ˆ๋ฉด ๋งŒ๋“ค๋ ค๋ฉด ์“ฐ๊ธฐ() ์„œ๋ธŒ๋ฃจํ‹ด์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์“ฐ๋‹ค() ๋ญ sprintf () ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค printf (), ํ• 
์ด:

์ž‰์–ด๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.
ํ•˜์œ„ ์“ฐ๊ธฐ {
@_๊ฐ€ ์•„๋‹ˆ๋ฉด "์‚ฌ์šฉ๋ฒ•: PICTURE ARGS ์“ฐ๊ธฐ"๋ฅผ ์ง–์Šต๋‹ˆ๋‹ค.
๋‚ด $format = ๊ต๋Œ€;
$^A = "";
formline($format,@_);
$^A๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค;
}

$string = swrite(<<'END', 1, 2, 3);
๋‚˜๋ฅผ ์ฒดํฌ ์•„์›ƒ
@<<< @||| @>>>
END
$string ์ธ์‡„;

๊ฒฝ๊ณ 


ํ˜•์‹์„ ๋๋‚ด๋Š” ์™ธ๋กœ์šด ์ ์€ ํ˜•์‹์„ ํ†ต๊ณผํ•˜๋Š” ๋ฉ”์ผ ๋ฉ”์‹œ์ง€๋ฅผ ์กฐ๊ธฐ์— ์ข…๋ฃŒํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
์ž˜๋ชป ๊ตฌ์„ฑ๋œ ์ธํ„ฐ๋„ท ๋ฉ”์ผ๋Ÿฌ(๊ทธ๋ฆฌ๊ณ  ๊ฒฝํ—˜์— ๋”ฐ๋ฅด๋ฉด ์ด๋Ÿฌํ•œ ์ž˜๋ชป๋œ ๊ตฌ์„ฑ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค.
์˜ˆ์™ธ๋Š” ์•„๋‹™๋‹ˆ๋‹ค). ๋”ฐ๋ผ์„œ ๋ฉ”์ผ์„ ํ†ตํ•ด ํฌ๋งท ์ฝ”๋“œ๋ฅผ ๋ณด๋‚ผ ๋•Œ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
ํ˜•์‹ ์ข…๋ฃŒ ์ ์ด ์™ผ์ชฝ ์—ฌ๋ฐฑ์— ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด SMTP ์ฐจ๋‹จ์ด ๋ฐฉ์ง€๋ฉ๋‹ˆ๋‹ค.

"my"๋กœ ์„ ์–ธ๋œ ์–ดํœ˜ ๋ณ€์ˆ˜๋Š” ํ˜•์‹์ด ์•„๋‹Œ ํ•œ ํ˜•์‹ ๋‚ด์—์„œ ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์–ดํœ˜ ๋ณ€์ˆ˜์˜ ๋ฒ”์œ„ ๋‚ด์—์„œ ์„ ์–ธ๋ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ ํ™˜๊ฒฝ์ด LC_NUMERIC ๋กœ์ผ€์ผ์„ ์ง€์ •ํ•˜๊ณ  "๋กœ์ผ€์ผ ์‚ฌ์šฉ"์ด ์œ ํšจํ•œ ๊ฒฝ์šฐ
ํ˜•์‹์ด ์„ ์–ธ๋˜๋ฉด ๋กœ์บ˜์€ ์†Œ์ˆ˜์  ๋ฌธ์ž๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
ํฌ๋งท๋œ ์ถœ๋ ฅ. ํฌ๋งท๋œ ์ถœ๋ ฅ์€ "๋กœ์ผ€์ผ ์‚ฌ์šฉ"์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
์“ฐ๋‹ค() ํ˜ธ์ถœ๋ฉ๋‹ˆ๋‹ค. ๋กœ์ผ€์ผ ์ฒ˜๋ฆฌ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ perllocale์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ณ ์ • ๊ธธ์ด ํ…์ŠคํŠธ ํ•„๋“œ์— ํ‘œ์‹œ๋  ๋ฌธ์ž์—ด ๋‚ด์—์„œ ๊ฐ ์ปจํŠธ๋กค์€
๋ฌธ์ž๋Š” ๊ณต๋ฐฑ์œผ๋กœ ๋Œ€์ฒด๋ฉ๋‹ˆ๋‹ค. (๊ทธ๋Ÿฌ๋‚˜ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ๋•Œ "\r"์˜ ํŠน๋ณ„ํ•œ ์˜๋ฏธ๋ฅผ ๊ธฐ์–ตํ•˜์‹ญ์‹œ์˜ค.
์ฑ„์šฐ๊ธฐ ๋ชจ๋“œ.) ์ด๋Š” ์ผ๋ถ€ ํ™”๋ฉด์—์„œ ์ œ์–ด ๋ฌธ์ž๊ฐ€ "์‚ฌ๋ผ์งˆ" ๋•Œ ์ •๋ ฌ ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.
์ถœ๋ ฅ ๋ฏธ๋””์–ด.

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์œผ๋กœ perlform ์‚ฌ์šฉ


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

Linux ๋ช…๋ น

Ad