เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

Ad


OnWorks favicon

mawk - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เปเบฅเปˆเบ™ mawk เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ mawk เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


mawk - เบเบฒเบ™เบชเบฐเปเบเบ™เบฎเบนเบšเปเบšเบšเปเบฅเบฐเบžเบฒเบชเบฒเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เบ‚เปเป‰เบ„เบงเบฒเบก

เบชเบฐเบซเบผเบธเบšเบชเบฑเบ‡เบฅเบงเบก


เบกเบญเบ [-W เบ—เบฒเบ‡เป€เบฅเบทเบญเบ] [-F เบกเบนเบ™เบ„เปˆเบฒ] [-v var=เบ„เปˆเบฒ] [--] 'เบ‚เปเป‰เบ„เบงเบฒเบกเป‚เบ„เบ‡เบเบฒเบ™' [เป„เบŸเบฅเปŒ ...]
เบกเบญเบ [-W เบ—เบฒเบ‡เป€เบฅเบทเบญเบ] [-F เบกเบนเบ™เบ„เปˆเบฒ] [-v var=เบ„เปˆเบฒ] [-f program-file] [--] [เป„เบŸเบฅเปŒ ...]

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”


เบกเบญเบ เป€เบ›เบฑเบ™เบ™เบฒเบเบžเบฒเบชเบฒเบชเปเบฒเบฅเบฑเบš AWK Programming Language. เบžเบฒเบชเบฒ AWK เปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบš
เบเบฒเบ™โ€‹เบซเบกเบนเบ™โ€‹เปƒเบŠเป‰โ€‹เบ‚เบญเบ‡โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹, เบ”เบถเบ‡โ€‹เบ‚เปเป‰โ€‹เบ„เบงเบฒเบกโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เบ›เบธเบ‡โ€‹เปเบ•เปˆเบ‡โ€‹, เปเบฅเบฐโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™ prototyping เปเบฅเบฐโ€‹
เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบเบฑเบš algorithms. เบกเบญเบ เป€เบ›เบฑเบ™ เปƒเบซเบกเปˆ เบ‡เบธเปˆเบก เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบกเบฑเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฒเบชเบฒ AWK
เบ•เบฒเบกเบ—เบตเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปƒเบ™ Aho, Kernighan เปเบฅเบฐ Weinberger, เป„เบ”เป‰ AWK เบ”เปเบฒเป€เบ™เบตเบ™เป‚เบ„เบ‡เบเบฒเบ™ เบžเบฒเบชเบฒ, Addison-wesley
Publishing, 1988. (เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒโ€‹เบซเบ™เบฑเบ‡โ€‹เบชเบท AWK.) เบกเบญเบ เบชเบญเบ”เบ„เปˆเบญเบ‡เบเบฑเบš Posix
1003.2 (เบฎเปˆเบฒเบ‡ 11.3) เบ„เปเบฒเบ™เบดเบเบฒเบกเบ‚เบญเบ‡เบžเบฒเบชเบฒ AWK เบ—เบตเปˆเบกเบตเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบšเปเปˆเบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”
เบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เปƒเบ™เบ›เบถเป‰เบก AWK, เปเบฅเบฐ เบกเบญเบ เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบ.

เป‚เบ„เบ‡เบเบฒเบ™ AWK เป€เบ›เบฑเบ™เบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡ เบฎเบนเบšเปเบšเบš {action} เบ„เปเบฒเบ™เบดเบเบฒเบกเบ‚เบญเบ‡เบ„เบนเปˆเปเบฅเบฐเบซเบ™เป‰เบฒเบ—เบตเปˆ. เบชเบฑเป‰เบ™
เป‚เบ›เบฅเปเบเบฅเบกเบ–เบทเบเปƒเบชเปˆเบขเบนเปˆเปƒเบ™เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เป‚เบ”เบเบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ–เบทเบเบซเบธเป‰เบกเบขเบนเปˆเปƒเบ™ ' ' เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™ shell
เบเบฒเบ™เบ•เบตเบ„เบงเบฒเบกเปเบฒเบ. เป‚เบ›เบฃเปเบเบฃเบกเบ—เบตเปˆเบเบฒเบงเบเบงเปˆเบฒเบชเบฒเบกเบฒเบ”เบญเปˆเบฒเบ™เป„เบ”เป‰เบˆเบฒเบเป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบ•เบปเบงเป€เบฅเบทเบญเบ -f. เบ‚เปเป‰เบกเบนเบ™
input เปเบกเปˆเบ™เบญเปˆเบฒเบ™เบˆเบฒเบเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเปƒเบ™เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡เบซเบผเบทเบˆเบฒเบเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ input เป€เบกเบทเปˆเบญ the
เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ. เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเปเบเบเบญเบญเบเป€เบ›เบฑเบ™เบšเบฑเบ™เบ—เบถเบเบ•เบฒเบกเบ—เบตเปˆเบเบณเบ™เบปเบ”เป‚เบ”เบเบ•เบปเบงเปเบเบเบšเบฑเบ™เบ—เบถเบ
เบ•เบปเบงเปเบ›, RS. เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, RS = "\n" เปเบฅเบฐเบšเบฑเบ™เบ—เบถเบเปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเป€เบชเบฑเป‰เบ™. เปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบ—เบถเบเปเบกเปˆเบ™
เบ›เบฝเบšเบ—เบฝเบšเบเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™ เบฎเบนเบšเปเบšเบš เปเบฅเบฐเบ–เป‰เบฒเบกเบฑเบ™เบเบปเบ‡เบเบฑเบ™, เบ‚เปเป‰เบ„เบงเบฒเบกเป‚เบ„เบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบš {action} is
เบ›เบฐเบ•เบดเบšเบฑเบ”.

OPTIONS


-F เบกเบนเบ™เบ„เปˆเบฒ เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เบ•เบปเบงโ€‹เปเบเบโ€‹เบžเบฒเบโ€‹เบชเบฐโ€‹เบซเบ™เบฒเบกโ€‹, FS, เบเบฒเบ™ เบกเบนเบ™เบ„เปˆเบฒ.

-f เป€เบญเบเบฐเบชเบฒเบ™ เบ‚เปเป‰เบ„เบงเบฒเบกเป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เบญเปˆเบฒเบ™เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™ เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเบกเบฒเบˆเบฒเบเป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡. เบซเบผเบฒเบ
-f เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เปเบกเปˆเบ™โ€‹เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹.

-v var=เบ„เปˆเบฒ เบกเบญเบšเบซเบกเบฒเบ เบกเบนเบ™เบ„เปˆเบฒ เบเบฑเบšเบ•เบปเบงเปเบ›เป‚เบ„เบ‡เบเบฒเบ™ var.

-- เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡เบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™.

เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เบ™เบตเป‰เบˆเบฐเบกเบตเบขเบนเปˆเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบกเบเบฑเบš Posix เบ‚เบญเบ‡ AWK, เปเบฅเบฐ
เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เบชเบฐโ€‹เป€เบžเบฒเบฐโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เปเบกเปˆเบ™โ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เบซเบ™เป‰เบฒโ€‹เบเบฑเบšโ€‹ -W. เบกเบญเบ เปƒเบซเป‰โ€‹เบซเบปเบโ€‹:

-W เบชเบฐเบšเบฑเบšเบžเบฒเบชเบฒ เบกเบญเบ เบ‚เบฝเบ™เบชเบฐเบšเบฑเบšเปเบฅเบฐเบฅเบดเบ‚เบฐเบชเบดเบ”เบ‚เบญเบ‡เบ•เบปเบ™เป€เบžเบทเปˆเบญ stdout เปเบฅเบฐเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เป€เบžเบทเปˆเบญ
stderr เปเบฅเบฐเบญเบญเบ 0.

-W dump เบ‚เบฝเบ™ assembler เป€เบŠเบฑเปˆเบ™: เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ•เบปเบงเปเบ—เบ™เบžเบฒเบเปƒเบ™เบ‚เบญเบ‡
เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐ stdout เปเบฅเบฐโ€‹เบญเบญเบ 0 (เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบฅเบงเบšโ€‹เบฅเบงเบกโ€‹เบชเบปเบšโ€‹เบœเบปเบ™โ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹)โ€‹.

-W เป‚เบ•เป‰เบ•เบญเบšเบŠเบธเบ”เบเบฒเบ™เบ‚เบฝเบ™เปเบšเบšเบšเปเปˆเบกเบต buffered เบเบฑเบš stdout เปเบฅเบฐเป€เบชเบฑเป‰เบ™ buffered เบญเปˆเบฒเบ™เบˆเบฒเบ stdin.
เบšเบฑเบ™เบ—เบถเบเบˆเบฒเบ stdin เปเบกเปˆเบ™เบชเบฒเบเป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡ RS.

-W exec เป€เบญเบเบฐเบชเบฒเบ™ เบ‚เปเป‰เบ„เบงเบฒเบกเป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เบญเปˆเบฒเบ™เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™ เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเบธเบ”เบ—เป‰เบฒเบ. เบกเบตเบ›เบฐเป‚เบซเบเบ”เปƒเบ™
เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ #! เบชเบปเบ™เบ—เบดเบชเบฑเบ™เบเบฒ "เบ•เบปเบงเป€เบฅเบ magic" เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
เบญเบฑเบเบชเบญเบ™.

-W sprintf=num เบ›เบฑเบšโ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ‚เบญเบ‡โ€‹ mawk เบ‚เบญเบ‡ buffer sprintf เบžเบฒเบเปƒเบ™เบเบฑเบš num เป„เบšเบ•เปŒ. เบซเบผเบฒเบโ€‹เบเบงเปˆเบฒ
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ—เบตเปˆเบซเบฒเบเบฒเบเบ‚เบญเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ™เบตเป‰เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™ เบกเบญเบ เบ„เบงเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ„เบทเบ™เปƒเบซเบกเปˆ.

-W posix_space เบเปเบฒเบฅเบฑเบ‡ เบกเบญเบ เบšเปเปˆเปƒเบซเป‰เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒ '\n' เป€เบ›เบฑเบ™เบžเบทเป‰เบ™เบ—เบตเปˆ.

เบฎเบนเบšเปเบšเบšเบชเบฑเป‰เบ™ -W[vdiesp] เบ–เบทเบเบฎเบฑเบšเบฎเบนเป‰เปเบฅเบฐเบขเบนเปˆเปƒเบ™เบšเบฒเบ‡เบฅเบฐเบšเบปเบš -We เปเบกเปˆเบ™เบšเบฑเบ‡เบ„เบฑเบšเป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™
เบ‚เปเป‰เบˆเปเบฒเบเบฑเบ”เบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡.

เบเบฒเบ™ AWK LANGUAGE


1. เป‚เบ„เบ‡เบเบฒเบ™ เป‚เบ„เบ‡เบ›เบฐเบเบญเบšเบเบฒเบ™
เป‚เบ„เบ‡เบเบฒเบ™ AWK เป€เบ›เบฑเบ™เบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡ เบฎเบนเบšเปเบšเบš {action} เบ„เบนเปˆเปเบฅเบฐเบ„เปเบฒเบ™เบดเบเบฒเบกเบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰.

เบฎเบนเบšเปเบšเบšเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™:
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
END
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ

เบซเบ™เบถเปˆเบ‡, เปเบ•เปˆเบšเปเปˆเปเบกเปˆเบ™เบ—เบฑเบ‡เบชเบญเบ‡, เบ‚เบญเบ‡ เบฎเบนเบšเปเบšเบš {action} เบชเบฒเบกเบฒเบ”เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™. เบ–เป‰เบฒ {action} เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™เบกเบฑเบ™เปเบกเปˆเบ™
implicitly {เบžเบดเบก }. เบ–เป‰เบฒ เบฎเบนเบšเปเบšเบš เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆเบเบฑเบ™เบขเปˆเบฒเบ‡เบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™. เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เปเบฅเบฐ
END เบฎเบนเบšเปเบšเบšเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบ–เบทเบเบ›เบดเบ”เป‚เบ”เบเปเบ–เบงเปƒเบซเบกเปˆ, เป€เบ„เบดเปˆเบ‡เบˆเปเป‰เบฒเบชเบญเบ‡เป€เบกเบฑเบ”เบซเบผเบทเบ—เบฑเบ‡เบชเบญเบ‡. เบเบธเปˆเบกเบ‚เบญเบ‡เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เป€เบŠเบฑเปˆเบ™
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบผเบทเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡ loop เปเบกเปˆเบ™เบ–เบทเบเบšเบฅเบฑเบญเบเบœเปˆเบฒเบ™ { ... } เปƒเบ™ C. เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบชเบธเบ”เบ—เป‰เบฒเบเปƒเบ™เบšเบฅเบฑเบญเบ
เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบต terminator. เป€เบชเบฑเป‰เบ™เบซเบงเปˆเบฒเบ‡เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบซเบกเบฒเบ; เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเปเบกเปˆเบ™เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡
เบกเบตเป€เบ„เบดเปˆเบ‡เบˆเปเป‰เบฒเบชเบญเบ‡เป€เบกเบฑเบ”. เบ‚เปเป‰เบ„เบงเบฒเบกเบเบฒเบงเบชเบฒเบกเบฒเบ”เบชเบทเบšเบ•เปเปˆเป„เบ”เป‰เบ”เป‰เบงเบ backslash, \. เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰
เบ–เบทเบเปเบเบเป‚เบ”เบเบšเปเปˆเบกเบต backslash เบซเบผเบฑเบ‡เบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”, เบงเบปเบ‡เป€เบฅเบฑเบšเบŠเป‰เบฒเบ, &&, ||, do, เบญเบทเปˆเบ™, เบชเบดเบ”
เบงเบปเบ‡เป€เบฅเบฑเบšเบ‚เบญเบ‡ an if, เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ or เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™, เปเบฅเบฐเบงเบปเบ‡เป€เบฅเบฑเบšเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เปƒเบ”เปœเบถเปˆเบ‡
เบ„เปเบฒเบ™เบดเบเบฒเบก. เบ„เบณเป€เบซเบฑเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ # เปเบฅเบฐเบ‚เบฐเบซเบเบฒเบเป„เบ›, เปเบ•เปˆเบšเปเปˆเบฅเบงเบกเป€เบ–เบดเบ‡เบ—เป‰เบฒเบเปเบ–เบง.

เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป„เบซเบผเป€เบ‚เบปเป‰เบฒเบ‚เบญเบ‡เป‚เบ›เบฃเปเบเบฃเบกเบžเบฒเบเปƒเบ™เบšเบฅเบฑเบญเบ.

if ( เบ•เบปเบงเบขเปˆเบฒเบ‡ ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

if ( เบ•เบปเบงเบขเปˆเบฒเบ‡ ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ เบญเบทเปˆเบ™ เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ ( เบ•เบปเบงเบขเปˆเบฒเบ‡ ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

do เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ ( เบ•เบปเบงเบขเปˆเบฒเบ‡ )

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ ( opt_expr ; opt_expr ; opt_expr ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ ( var in array ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ•เปเปˆ

เบžเบฑเบเบœเปˆเบญเบ™

2. เบ‚เปเป‰เบกเบนเบ™ เบ›เบฐเป€เบžเบ”, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ เปเบฅเบฐ เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš
เบกเบตเบชเบญเบ‡เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™, เบ•เบปเบงเป€เบฅเบ เปเบฅเบฐเบชเบฐเบ•เบฃเบดเบ‡. เบ•เบปเบงเป€เบฅเบเบ„เบปเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เป€เบ•เบฑเบกเป€เบŠเบฑเปˆเบ™
-2, เบ—เบปเบ”เบชเบฐเบ™เบดเบเบปเบกเบ„เบท 1.08, เบซเบผเบทเปƒเบ™เปเบฒเบเป€เบซเบ”เบ—เบฒเบ‡เบงเบดเบ—เบฐเบเบฒเบชเบฒเบ”เป€เบŠเบฑเปˆเบ™ -1.1e4 เบซเบผเบท .28E-3. เบ•เบปเบงเป€เบฅเบเบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™
เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบขเบนเปˆเบžเบฒเบเปƒเบ™ เปเบฅเบฐ เบเบฒเบ™เบ„เบณเบ™เบงเบ™เบ—เบฑเบ‡เปเบปเบ”เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบขเบนเปˆเปƒเบ™เป€เบฅเบเป€เบฅเบเบ„เบฐเบ™เบดเบ”เบ—เบตเปˆเบฅเบญเบเบ•เบปเบง. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบš
เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ 0.2e2 == 20 เปเบกเปˆเบ™ true เปเบฅเบฐ true เปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เป€เบ›เบฑเบ™ 1.0.

เบ„เบปเบ‡เบชเบฐเบ•เบฃเบดเบ‡เบ–เบทเบเบซเบธเป‰เบกเบขเบนเปˆเปƒเบ™เบงเบปเบ‡เบขเบทเบกเบ„เบนเปˆ.

"เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเปเบ–เบงเปƒเปเปˆเบขเบนเปˆเบ—เป‰เบฒเบ.\n"

เบชเบฒเบเบชเบฒเบกเบฒเบ”เบชเบทเบšเบ•เปเปˆเบ‚เป‰เบฒเบกเป€เบชเบฑเป‰เบ™เป„เบ”เป‰เป‚เบ”เบเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต (\) เปเบ–เบงเปƒเบซเบกเปˆ. เบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบ•เปเปˆเป„เบ›เบ™เบตเป‰
เบฅเปเบฒเบ”เบฑเบšเปเบกเปˆเบ™เบฎเบฑเบšเบฎเบนเป‰.

\\
\" "
\a เป€เบ•เบทเบญเบ™, ascii 7
\b backspace, ascii 8
เปเบ–เบš \t, ascii 9
\n เปเบ–เบงเปƒเปเปˆ, ascii 10
\v เปเบ–เบšเปเบ™เบงเบ•เบฑเป‰เบ‡, ascii 11
\f formfeed, ascii 12
\r เบเบฑเบšเบ„เบทเบ™ carriage, ascii 13
\ddd 1, 2 เบซเบผเบท 3 เป‚เบ•เป€เบฅเบเปเบ›เบ”เบชเปเบฒเบฅเบฑเบš ascii ddd
\xhh 1 เบซเบผเบท 2 เบ•เบปเบงเป€เบฅเบ hex เบชเปเบฒเบฅเบฑเบš ascii hh

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบญเบทเปˆเบ™ \c, เบ—เปˆเบฒเบ™เบˆเบฐเป„เบ”เป‰เบฎเบฑเบš \c, ie, เบกเบญเบ เบšเปเปˆเบชเบปเบ™เปƒเบˆเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต.

เบกเบตเปเบ—เป‰เบชเบฒเบกเบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™; เบญเบฑเบ™เบ—เบตเบชเบฒเบกเปเบกเปˆเบ™ เบˆเปเบฒเบ™เบงเบ™ เปเบฅเบฐ string เป€เบŠเบดเปˆเบ‡เบกเบตเบ—เบฑเบ‡ เบ
เบ„เปˆเบฒเบ•เบปเบงเป€เบฅเบ เปเบฅเบฐเบ„เปˆเบฒเบชเบฐเบ•เบฃเบดเบ‡เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™. เบ•เบปเบงเปเบ›เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เบเปเบฒเบ™เบปเบ”เป€เบ‚เบปเป‰เบฒเบกเบฒ
เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบญเป‰เบฒเบ‡เบญเบตเบ‡เบ—เปเบฒเบญเบดเบ”เปเบฅเบฐเบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฑเบš null, เบ•เบปเบงเป€เบฅเบ เปเบฅเบฐเบ„เปˆเบฒเบชเบฐเบ•เบฃเบดเบ‡
เป€เบŠเบดเปˆเบ‡เบกเบตเบ„เปˆเบฒเบ•เบปเบงเป€เบฅเบ 0 เปเบฅเบฐเบ„เปˆเบฒเบชเบฐเบ•เบฃเบดเบ‡ "". เบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เป€เบฅเบฑเบเป†เบ™เป‰เบญเบเป† เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบžเบดเบกเป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡
เบกเบฒเบˆเบฒเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐเบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบˆเบฐเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™. (เป€เบšเบดเปˆเบ‡เบžเบฒเบ 4).

เบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™เปเบฅเบฐเบเบฒเบ™เปเบ›เบ‡เบ›เบฐเป€เบžเบ”เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”
เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบžเบทเปˆเบญเบ›เบฐเป€เบกเบตเบ™เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™

y = x + 2 ; z = x "เบชเบฐเบšเบฒเบเบ”เบต"

เบ„เปˆเบฒเบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ•เบปเบงเปเบ› y เบˆเบฐเบ–เบทเบเบžเบดเบกเป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบ. เบ–เป‰เบฒ x เบšเปเปˆเปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ, เบ„เปˆเบฒเบ—เบตเปˆเบญเปˆเบฒเบ™
เบˆเบฒเบ x เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเบเปˆเบญเบ™เบ—เบตเปˆเบกเบฑเบ™เบˆเบฐเป€เบžเบตเปˆเบกเป€เบ›เบฑเบ™ 2 เปเบฅเบฐเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™ y. เบกเบนเบ™เบ„เปˆเบฒเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰
เปƒเบ™เบ•เบปเบงเปเบ› z เบˆเบฐเบ–เบทเบเบžเบดเบก string, เปเบฅเบฐเบ„เปˆเบฒเบ‚เบญเบ‡ x เบˆเบฐเบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ string if
เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เปเบฅเบฐ concatenated เบเบฑเบš "เบชเบฐเบšเบฒเบเบ”เบต". (เปเบ™เปˆเบ™เบญเบ™, เบ„เปˆเบฒเปเบฅเบฐเบ›เบฐเป€เบžเบ”เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™ x เปเบกเปˆเบ™
เบšเปเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เป‚เบ”เบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ”เป†.) เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเป‚เบ”เบเปƒเบŠเป‰เบ‚เบญเบ‡เบกเบฑเบ™
เบ„เบณเบ™เบณเปœเป‰เบฒเบ•เบปเบงเป€เบฅเบเบ—เบตเปˆเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”เบ„เบทเบเบฑเบš atof(3). เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡เป‚เบ”เบ
เบ›เปˆเบฝเบ™เปเบ—เบ™ เบ•เบปเบงเบขเปˆเบฒเบ‡ เบเบฑเบš sprintf(CONVFMT, เบ•เบปเบงเบขเปˆเบฒเบ‡), เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ เบ•เบปเบงเบขเปˆเบฒเบ‡ เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบขเบนเปˆเปƒเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบš
เป€เบ„เบทเปˆเบญเบ‡เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบฑเบ™เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ เปเบฅเปˆเบ™("%d", เบ•เบปเบงเบขเปˆเบฒเบ‡). Sprintf() เป€เบ›เบฑเบ™
AWK เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ‚เบญเบ‡ เปเบฅเปˆเบ™(3) เปเบฅเบฐ CONVFMT เปเบกเปˆเบ™เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™
เบ•เบปเบงเปเบ›เบ—เบตเปˆเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เบžเบฒเบเปƒเบ™เบˆเบฒเบเบ•เบปเบงเป€เบฅเบเป„เบ›เบซเบฒเบชเบฐเบ•เบฃเบดเบ‡ เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ "%.6g".
เบเบฒเบ™เปเบ›เบ‡เบ›เบฐเป€เบžเบ”เบ—เบตเปˆเบˆเบฐเปเบˆเป‰เบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบš, เบ•เบปเบงเบขเปˆเบฒเบ‡ "" เปเบกเปˆเบ™ string เปเบฅเบฐ เบ•เบปเบงเบขเปˆเบฒเบ‡+0 เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบ.

เบเบฒเบ™โ€‹เบ›เบฐโ€‹เป€เบกเบตเบ™โ€‹เบœเบปเบ™โ€‹, เบ•เบปเบงเบขเปˆเบฒเบ‡1 rel-op เบ•เบปเบงเบขเปˆเบฒเบ‡2, เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เบฑเบ‡เบชเบญเบ‡ operands เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเบซเบผเบทเบ•เบปเบงเป€เบฅเบเปเบฅเบฐ string เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™
เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ; เบ–เป‰เบฒเบ—เบฑเบ‡เบชเบญเบ‡ operands เปเบกเปˆเบ™ string เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบกเปˆเบ™ string; เบ–เป‰เบฒเบซเบ™เบถเปˆเบ‡
operand เปเบกเปˆเบ™ string, operand เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ string เบ–เบทเบเบ›เปˆเบฝเบ™เปเบฅเบฐเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบกเปˆเบ™ string. เป„เบ”เป‰
เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ, 1 เบซเบผเบท 0.

เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™ boolean เป€เบŠเบฑเปˆเบ™, if ( เบ•เบปเบงเบขเปˆเบฒเบ‡ ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ, เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡เบ›เบฐเป€เบกเบตเบ™เป€เบ›เบฑเบ™ true if
เปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบ–เป‰เบฒเบกเบฑเบ™เบšเปเปˆเปเบกเปˆเบ™เบชเบฒเบเบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ ""; เบ„เปˆเบฒเบ•เบปเบงเป€เบฅเบเบ–เป‰เบฒเปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเบ–เป‰เบฒเบšเปเปˆเปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ
เบชเบนเบ™.

3. เป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด expressions
เปƒเบ™เบžเบฒเบชเบฒ AWK, เบšเบฑเบ™เบ—เบถเบ, เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐเบชเบฐเบ•เบฃเบดเบ‡เบกเบฑเบเบˆเบฐเบ–เบทเบเบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ a เบ›เบปเบเบเบฐเบ•เบด
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ. เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปเบšเบšเบ›เบปเบเบเบฐเบ•เบดเปเบกเปˆเบ™เบ–เบทเบเบซเบธเป‰เบกเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ•เบฑเบ”, เปเบฅเบฐ

เบ•เบปเบงเบขเปˆเบฒเบ‡ ~/r/

เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ AWK เบ—เบตเปˆเบ›เบฐเป€เบกเบตเบ™เป€เบ›เบฑเบ™ 1 if เบ•เบปเบงเบขเปˆเบฒเบ‡ "เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™" r, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒ substring เบ‚เบญเบ‡
เบ•เบปเบงเบขเปˆเบฒเบ‡ เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบŠเบธเบ”เบ‚เบญเบ‡เบชเบฒเบเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป‚เบ”เบ r. เบšเปเปˆเบกเบตเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบฐเป€เบกเบตเบ™เป€เบ›เบฑเบ™ 0;
เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ—เบ™ ~ เบเบฑเบšเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ "เบšเปเปˆเบเบปเบ‡เบเบฑเบ™", !~ , เบเบฑเบšเบ„เบทเบ™เบ„เบงเบฒเบกเบซเบกเบฒเบ. เปƒเบ™โ€‹เบ–เบฒโ€‹เบ™เบฐโ€‹เป€เบ›เบฑเบ™โ€‹เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹
เบ„เบนเปˆ,

/r/ { เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” } เปเบฅเบฐ $0 ~/r/ { เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” }

เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™ r, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” เบ–เบทเบโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹. เปƒเบ™โ€‹เบ„เบงเบฒเบกโ€‹เป€เบ›เบฑเบ™โ€‹เบˆเบดเบ‡, /r/
เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ AWK เบ—เบตเปˆเป€เบ—เบปเปˆเบฒเบเบฑเบš ($0 ~/r/) เบ—เบธเบเบšเปˆเบญเบ™เบเบปเบเป€เบงเบฑเป‰เบ™เป€เบกเบทเปˆเบญเบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบ‚เบงเบฒ
เบ‚เป‰เบฒเบ‡เบ‚เบญเบ‡เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบซเบผเบทเบœเปˆเบฒเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบเบฑเบšเบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เปƒเบ™เบ—เบตเปˆเบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเป€เบ›เบฑเบ™
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด.

AWK เปƒเบŠเป‰เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบ‚เบฐเบซเบเบฒเบเบญเบญเบเป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš เบ•เบปเบงเบขเปˆเบฒเบ‡(1). เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด
metacharacters, ie, เบœเบนเป‰เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบซเบกเบฒเบเบžเบดเป€เบชเบ”เปƒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเปเบกเปˆเบ™

^ $ . [ ] | ( ) * + ?

เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเปเบกเปˆเบ™เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบˆเบฒเบเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

c เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบ•เบปเบงเปเบ› c.

\c เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเบเบณเบ™เบปเบ”เป‚เบ”เบ เบฅเบณเบ”เบฑเบšเบเบฒเบ™เปœเบต เบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™
เบชเบฐเบ•เบฃเบดเบ‡เบ„เบปเบ‡เบ—เบตเปˆ เบซเบผเบทเบ•เบปเบงเปœเบฑเบ‡เบชเบท c เบ–เป‰เบฒ \c เบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต
เบฅเปเบฒเบ”เบฑเบš.

. เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ”เบ™เบถเปˆเบ‡ (เบฅเบงเบกเบ—เบฑเบ‡เปเบ–เบงเปƒเปเปˆ).

^ เบเบปเบ‡โ€‹เบเบฑเบšโ€‹เบ”เป‰เบฒเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบ‚เบญเบ‡โ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบดเบ‡.

$ เบเบปเบ‡เบเบฑเบšเบ”เป‰เบฒเบ™เบซเบผเบฑเบ‡เบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡.

[c1c2c3...] เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ”เบ™เบถเปˆเบ‡เปƒเบ™เบŠเบฑเป‰เบ™เบฎเบฝเบ™ c1c2c3... . เป„เบฅเบเบฐเบซเปˆเบฒเบ‡เบ‚เบญเบ‡
เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปเบกเปˆเบ™เบซเบกเบฒเบเป€เบ–เบดเบ‡ c1-c2 เบžเบฒเบเปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™ [... ].

[^c1c2c3...] เบเบปเบ‡เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ”เบ™เบถเปˆเบ‡เบ—เบตเปˆเบšเปเปˆเบขเบนเปˆเปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™ c1c2c3...

เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ›เบปเบเบเบฐเบ•เบดเปเบกเปˆเบ™เบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบˆเบฒเบเบชเบณเบ™เบงเบ™เบ›เบปเบเบเบฐเบ•เบดเบญเบทเปˆเบ™เป†เบ”เบฑเปˆเบ‡เบ™เบตเป‰:

r1r2 matches r1 เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ—เบฑเบ™เบ—เบตเป‚เบ”เบ r2 (concatenation).

r1 | r2 matches r1 เบซเบผเบท r2 (เบชเบฐเบซเบผเบฑเบš).

r* เบเบปเบ‡เบเบฑเบ™ r เบŠเป‰เบณเบชเบนเบ™ เบซเบผเบทเบซเบผเบฒเบเบ„เบฑเป‰เบ‡.

r+ เบเบปเบ‡เบเบฑเบ™ r เบŠเปเป‰เบฒเบ„เบทเบ™เปœเบถเปˆเบ‡ เบซเบผเบทเบซเบผเบฒเบเบ„เบฑเป‰เบ‡.

r? เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™ r เบชเบนเบ™เบซเบผเบทเบซเบ™เบถเปˆเบ‡เบ„เบฑเป‰เบ‡.

(r) เบเบฒเบ™โ€‹เปเบ‚เปˆเบ‡โ€‹เบ‚เบฑเบ™โ€‹ r, เบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบเบธเปˆเบก.

เบ„เบงเบฒเบกเบชเบณเบ„เบฑเบ™เบ‚เบญเบ‡เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เปเบกเปˆเบ™ alternation, concatenation เปเบฅเบฐ unary (*, + or
?)

เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡,

/^[_a-zA-Z][_a-zA-Z0-9]*$/ เปเบฅเบฐ
/^[-+]?([0-9]+\.?|\.[0-9])[0-9]*([eE][-+]?[0-9]+)?$/

เบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆเป‚เบ”เบเบ•เบปเบงเบฅเบฐเบšเบธ AWK เปเบฅเบฐเบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเบ•เบปเบงเป€เบฅเบ AWK เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ. เบˆเบฐโ€‹เบ•เป‰เบญเบ‡
เบ–เบทเบเบซเบฅเบปเบšเบซเบ™เบตเป€เบžเบทเปˆเบญเบ–เบทเบเบฎเบฑเบšเบฎเบนเป‰เป€เบ›เบฑเบ™เบˆเบธเบ”เบ—เบปเบ”เบชเบฐเบ™เบดเบเบปเบก, เปเบฅเบฐ metacharacters เบšเปเปˆเปเบกเปˆเบ™เบžเบดเป€เบชเบ”
เบžเบฒเบเปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™เบฅเบฑเบเบชเบฐเบ™เบฐ.

เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปƒเบ”เป†เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเบนเปˆเป€เบšเบทเป‰เบญเบ‡เบ‚เบงเบฒเบ‚เบญเบ‡เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ ~ เบซเบผเบท !~ เบซเบผเบทเบชเบปเปˆเบ‡เป„เบ›เบซเบฒ a
built-in เบ—เบตเปˆเบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด. เบ–เป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เบกเบฑเบ™เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ string, เปเบฅเบฐ
เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เป„เบ”เป‰โ€‹เบ•เบตโ€‹เบฅเบฒโ€‹เบ„เบฒโ€‹เป€เบ›เบฑเบ™โ€‹เบชเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ›เบปเบโ€‹เบเบฐโ€‹เบ•เบดโ€‹. เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡,

BEGIN { identifier = "[_a-zA-Z][_a-zA-Z0-9]*" }

$0 ~ "^" เบ•เบปเบงเบฅเบฐเบšเบธ

เบžเบดเบกเบ—เบธเบเป€เบชเบฑเป‰เบ™เบ—เบตเปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบ•เบปเบงเบฅเบฐเบšเบธ AWK.

เบกเบญเบ เบฎเบฑเบšเบฎเบนเป‰เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, //, เป€เบŠเบดเปˆเบ‡เบเบปเบ‡เบเบฑเบšเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเปเบฅเบฐเป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™
เบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆเป‚เบ”เบเบชเบฐเบ•เบฃเบดเบ‡เปƒเบ”เบ™เบถเปˆเบ‡เบขเบนเปˆเบ—เบฒเบ‡เปœเป‰เบฒ, เบ”เป‰เบฒเบ™เบซเบผเบฑเบ‡ เปเบฅเบฐเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบ—เบธเบเป‚เบ•. เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡,

echo abc | mawk { gsub(//, "X"); เบžเบดเบก }
XaXbXcX

4. เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ เปเบฅเบฐ เบ—เบปเปˆเบ‡เบ™เบฒ
เบเบฒเบ™โ€‹เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹เปเบกเปˆเบ™โ€‹เป„เบ”เป‰โ€‹เบญเปˆเบฒเบ™โ€‹เปƒเบ™โ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เปƒเบŠเป‰โ€‹เป€เบงโ€‹เบฅเบฒโ€‹, เปเบฅเบฐโ€‹เป€เบเบฑเบšโ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹เป„เบงเป‰โ€‹เปƒเบ™โ€‹ เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก เบ•เบปเบงเปเบ› $0. เบšเบฑเบ™เบ—เบถเบเปเบกเปˆเบ™
เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™ เบ—เบปเปˆเบ‡เบ™เบฒ เบ—เบตเปˆโ€‹เบ–เบทเบโ€‹เป€เบเบฑเบšโ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹เป„เบงเป‰โ€‹เปƒเบ™โ€‹ $1, $2, ... , $NF. เบ•เบปเบงเปเบ›เปƒเบ™เบ•เบปเบง NF เปเบกเปˆเบ™เป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เป„เบงเป‰
เบเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก, เปเบฅเบฐ NR เปเบฅเบฐ FNR เปเบกเปˆเบ™เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เป‚เบ”เบ 1. เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡ $NF เบ–เบทเบเบเปเบฒเบ™เบปเบ”เปƒเบซเป‰
"".

เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบเปƒเบซเป‰ $0 เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ—เบปเปˆเบ‡โ€‹เบ™เบฒโ€‹เปเบฅเบฐโ€‹ NF เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ„เบดเบ”โ€‹เป„เบฅเปˆโ€‹เบ„เบทเบ™โ€‹เปƒเบซเบกเปˆโ€‹. เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบเปƒเบซเป‰ NF เบซเบผเบท
เบชเบฒโ€‹เป€เบซเบ”โ€‹เบžเบฒเบโ€‹เบชเบฐโ€‹เบซเบ™เบฒเบกโ€‹ $0 เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบเปเปˆโ€‹เบชเป‰เบฒเบ‡โ€‹เบ„เบทเบ™โ€‹เปƒเบซเบกเปˆโ€‹เป‚เบ”เบโ€‹เบเบฒเบ™ concatenating เป„เบ”เป‰โ€‹ $i เบ‚เบญเบ‡ เปเบเบเป‚เบ”เบ FSO.
เบเบฒเบ™เบกเบญเบšเปเบฒเบเปƒเบซเป‰เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบ”เบฑเบ”เบŠเบฐเบ™เบตเปƒเบซเบเปˆเบเบงเปˆเบฒ NF, เป€เบžเบตเปˆเบกเบ‚เบทเป‰เบ™ NF เปเบฅเบฐเบชเบฒเป€เบซเบ” $0 เบˆเบฐ
เบเปเปˆเบชเป‰เบฒเบ‡ เปƒเปเปˆ.

เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบชเบฐเบ•เบฃเบดเบ‡, เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”เบกเบตเบฎเบนเบšเปเบšเบšเบ•เบปเบงเป€เบฅเบเปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™
เบ›เบฐเป€เบžเบ”เปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบเปเบฅเบฐเบชเบฒเบ. เบเบปเบโ€‹เบ•เบปเบงโ€‹เบขเปˆเบฒเบ‡,

echo 24 24E |
mawk '{ เบžเบดเบก($1>100, $1>"100", $2>100, $2>"100") }'
0 1 1 1

$0 เปเบฅเบฐ $2 เปเบกเปˆเบ™ string เปเบฅเบฐ $1 เปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ เปเบฅเบฐเบชเบฐเบ•เบฃเบดเบ‡. เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™เบ•เบปเบงเป€เบฅเบ, the
เบญเบฑเบ™เบ—เบตเบชเบญเบ‡เปเบกเปˆเบ™ string, เบ—เบตเบชเบฒเบกเปเบกเปˆเบ™ string (100 เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ "100"), เปเบฅเบฐเบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™ string.

5. เบชเบณ เบ™เบงเบ™ เปเบฅเบฐ เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™
syntax เบ‚เบญเบ‡ expression เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบš C. Primary expressions are numeric constant, string
เบ„เบปเบ‡เบ—เบตเปˆ, เบ•เบปเบงเปเบ›, เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™, array เปเบฅเบฐเบŸเบฑเบ‡เบŠเบฑเบ™เป‚เบ—. เบ•เบปเบงเบฅเบฐเบšเบธเบ•เบปเบงเปเบ›,
array เบซเบผเบท function เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™, เบ•เบปเบงเป€เบฅเบเปเบฅเบฐ underscores, เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบ•เบปเบงเป€เบฅเบ. เบ•เบปเบงเปเบ›เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบเบฒเบ”; เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบกเบตเบขเบนเปˆเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปเบฒเบญเบดเบ”เบญเป‰เบฒเบ‡เบญเบตเบ‡เปเบฅเบฐเป€เบ›เบฑเบ™
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ null.

เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปƒเบซเบกเปˆเปเบกเปˆเบ™เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™
เบญเบฑเบ™เบ”เบฑเบšเบ•เบปเป‰เบ™.

เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบ = += -= *= /= %= ^=
เบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚ ? :
เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™ or ||
เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™ เปเบฅเบฐ &&
array เบชเบฐเบกเบฒเบŠเบดเบ in
เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ ~ !~
เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ <> <=>= == !=
เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก (เบšเปเปˆเบกเบตเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบˆเบฐเปเบˆเป‰เบ‡)
เป€เบžเบตเปˆเบก ops + -
mul ops * /%
unary + -
เบขเปˆเบฒเบ‡เบกเบตเป€เบซเบ”เบœเบปเบ™ เบšเปเปˆ !
เป€เบฅเบเบเบณเบฅเบฑเบ‡ ^
inc เปเบฅเบฐ Dec ++ -- (เบ—เบฑเบ‡เป‚เบžเบ” เปเบฅเบฐเบเปˆเบญเบ™)
เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก $

เบเบฒเบ™เบกเบญเบšเปเบฒเบ, เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚ เปเบฅเบฐ เป€เบฅเบเบเบณเบฅเบฑเบ‡เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ เบ‚เบงเบฒเบซเบฒเบŠเป‰เบฒเบ; เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™เบญเบทเปˆเบ™เป†
เบชเบปเบกเบ—เบปเบšเบŠเป‰เบฒเบเบซเบฒเบ‚เบงเบฒ. เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปƒเบ”เป†เบชเบฒเบกเบฒเบ”เบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™เบงเบปเบ‡เป€เบฅเบฑเบš.

6. เบญเบฒเป€เบฅ
Awk เบชเบฐเปœเบญเบ‡เบญเบฒเป€เบฃเปเบšเบšเปœเบถเปˆเบ‡เบกเบดเบ•เบด. เบญเบปเบ‡เบ›เบฐเบเบญเบšเบญเบฒเป€เบฃเปเบกเปˆเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™ array[เบ•เบปเบงเบขเปˆเบฒเบ‡]. เปเบปเบ”เบญเบฒเบเบธ
เบ–เบทเบเบ›เปˆเบฝเบ™เบžเบฒเบเปƒเบ™เป€เบ›เบฑเบ™เบ›เบฐเป€เบžเบ”เบชเบฐเบ•เบฃเบดเบ‡, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡, A[1] เปเบฅเบฐ A["1"] เปเบกเปˆเบ™เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™.
เบญเบปเบ‡เบ›เบฐเบเบญเบšเปเบฅเบฐเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ•เบปเบงเบˆเบดเบ‡เปเบกเปˆเบ™ "1". Arrays indexed by strings เป€เบญเบตเป‰เบ™เบงเปˆเบฒ associative
arrays. เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ array เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ; เบญเบปเบ‡เบ›เบฐเบเบญเบšเบกเบตเบขเบนเปˆเป€เบกเบทเปˆเบญเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”. เบเบฒเบ™โ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบญเบญเบโ€‹,
เบ•เบปเบงเบขเปˆเบฒเบ‡ in array เบ›เบฐเป€เบกเบตเบ™เป€เบ›เบฑเบ™ 1 เบ–เป‰เบฒ array[เบ•เบปเบงเบขเปˆเบฒเบ‡] เบกเบตเบขเบนเปˆ, เบญเบทเปˆเบ™เป€เบ–เบดเบ‡ 0.

เบกเบตเบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ loops เปƒเบ™เป„เบฅเบเบฐเปเบ•เปˆเบฅเบฐเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ‚เบญเบ‡ array.

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ ( var in array ) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ

เบŠเบธเบ” var เปเบ•เปˆเบฅเบฐเบ”เบฑเบ”เบŠเบฐเบ™เบตเบ‚เบญเบ‡ array เปเบฅเบฐโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹ เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ. เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹ var เบ—เบฒเบ‡เบ‚เบงเบฒเบ‡
เบ•เบปเบงเบŠเบตเป‰เบงเบฑเบ”เบ‚เบญเบ‡ array เบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”.

เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™, เบฅเบถเบš array[เบ•เบปเบงเบขเปˆเบฒเบ‡], เบชเบฒเป€เบซเบ” array[เบ•เบปเบงเบขเปˆเบฒเบ‡] เบšเปเปˆโ€‹เบกเบตโ€‹. เบกเบญเบ เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบ›เบฑเบ™
เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบ, เบฅเบถเบš array, เป€เบŠเบดเปˆเบ‡เบฅเบถเบšเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ array.

Multidimensional arrays เบ–เบทเบเบชเบฑเบ‡เป€เบ„เบฒเบฐเบ”เป‰เบงเบ concatenation เป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเปเบ›เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™
SUBSEP. array[เบ•เบปเบงเบขเปˆเบฒเบ‡1,เบ•เบปเบงเบขเปˆเบฒเบ‡2] เป€เบ—เบปเปˆเบฒเบเบฑเบš array[เบ•เบปเบงเบขเปˆเบฒเบ‡1 SUBSEP เบ•เบปเบงเบขเปˆเบฒเบ‡2]. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเปเบฒเบฅเบฑเบš เบ
เบญเบปเบ‡เบ›เบฐเบเบญเบš multidimensional เปƒเบŠเป‰เบ”เบฑเบ”เบŠเบฐเบ™เบตเบงเบปเบ‡เป€เบฅเบฑเบš, เป€เบŠเบฑเปˆเบ™:

เบ–เป‰เบฒ (i, j) เปƒเบ™ A ) เบžเบดเบก A[i, j]

7. เบ•เบปเบงเปเบ›เปƒเบ™เบ•เบปเบง
เบ•เบปเบงเปเบ›เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบชเป‰เบฒเบ‡เปƒเบ™เบ•เบปเบงเปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเปˆเบญเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™.

ARGC เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡.

ARGV array เบ‚เบญเบ‡ arguments เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡, 0..ARGC-1.

CONVFMT เบฎเบนเบšเปเบšเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เปˆเบฝเบ™เบžเบฒเบเปƒเบ™เบ‚เบญเบ‡เบ•เบปเบงเป€เบฅเบเป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡, เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ = "%.6g".

เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก array เบ–เบทเบเบ”เบฑเบ”เบชเบฐเบ™เบตเป‚เบ”เบเบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก. เบชเบฐโ€‹เบ•โ€‹เบฃเบดโ€‹เบ‡โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เปเบงเบ”โ€‹เบฅเป‰เบญเบกโ€‹, var=เบ„เปˆเบฒ
เบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เป€เบ›เบฑเบ™ เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก[var] = เบกเบนเบ™เบ„เปˆเบฒ.

เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™ เบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™.

FNR เบ•เบปเบงเป€เบฅเบเบšเบฑเบ™เบ—เบถเบเบ›เบฐเบˆเบธเบšเบฑเบ™เปƒเบ™ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™.

FS เปเบšเปˆเบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด.

NF เบˆเบณเบ™เบงเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบšเบฑเบ™เบ—เบถเบเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.

NR เบ•เบปเบงเป€เบฅเบเบšเบฑเบ™เบ—เบถเบเบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบขเบนเปˆเปƒเบ™เบเบฐเปเบชเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”.

OFMT เบฎเบนเบšเปเบšเบšเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบžเบดเบกเบ•เบปเบงเป€เบฅเบ; เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ = "%.6g".

FSO inserted between fields on output, initially = " ".

ORS เบขเบธเบ”เปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบ—เบถเบเบเปˆเบฝเบงเบเบฑเบšเบœเบปเบ™เบœเบฐเบฅเบดเบ”, เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ = "\n".

RLENGTH เบ„เบงเบฒเบกเบเบฒเบงเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒเบ„เบฑเป‰เบ‡เบชเบธเบ”เบ—เป‰เบฒเบเบเบฑเบšเบŸเบฑเบ‡เบŠเบฑเบ™เปƒเบ™เบ•เบปเบง, เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™().

RS เบ•เบปเบงเปเบเบเบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ = "\n".

RSTART เบ”เบฑเบ”เบŠเบฐเบ™เบตเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบเบฒเบ™เป‚เบ—เบซเบฒเบชเบธเบ”เบ—เป‰เบฒเบ เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™().

SUBSEP เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡ subscript array เบซเบผเบฒเบ, เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™ = "\034".

8. Built-in เบซเบ™เป‰เบฒเบ—เบตเปˆ
เบŸเบฑเบ‡เบŠเบฑเบ™เบชเบฒเบ

gsub(r,s,t) gsub(r, s)
เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบ—เบปเปˆเบงเป‚เบฅเบ, เบ—เบธเบเป†เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบ‚เบญเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด r เปƒเบ™เบ•เบปเบงเปเบ› t is
เปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ string s. เบˆเปเบฒเบ™เบงเบ™เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เบ–เป‰เบฒ t is
เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, $0 เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. An & เปƒเบ™ string เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™ s เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ
เบˆเบฑเบšเบ„เบนเปˆ substring เบ‚เบญเบ‡ t. \& เปเบฅเบฐ \\ เป€เบญเบปเบฒเบ•เบปเบงเบซเบ™เบฑเบ‡เบชเบท & เปเบฅเบฐ \, เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš, เปƒเบ™
เบชเบฒเบโ€‹เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เปเบ—เบ™โ€‹.

เบ”เบฑเบ”เบŠเบฐเบ™เบต(s, t)
If t เปเบกเปˆเบ™เบชเบฒเบเบเปˆเบญเบเบ‚เบญเบ‡ s, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ•เปเบฒเปเบซเบ™เปˆเบ‡เบ—เบตเปˆ t เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™เบเบฑเบšเบ„เบทเบ™, เบญเบทเปˆเบ™
0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ s เบขเบนเปˆโ€‹เปƒเบ™โ€‹เบ•เปเบฒโ€‹เปเบซเบ™เปˆเบ‡ 1โ€‹.

เบ„เบงเบฒเบกเบเบฒเบง(s)
เบ•เบญเบšเบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡ s.

เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™(s,r)
เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบ—เบตเปˆเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบœเบปเบ™เบ›เบปเบเบเบฐเบ•เบด r in
string s. เบ•เบญเบš 0 เบ–เป‰เบฒเบšเปเปˆเบเบปเบ‡เบเบฑเบ™. เปƒเบ™เบ–เบฒเบ™เบฐเป€เบ›เบฑเบ™เบœเบปเบ™เบ‚เป‰เบฒเบ‡เบ„เบฝเบ‡, RSTART เบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบซเป‰
เบเบฑเบšเบ„เบทเบ™เบกเบนเบ™เบ„เปˆเบฒ. RLENGTH เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบซเบผเบท -1 เบ–เป‰เบฒเบšเปเปˆเบกเบตเบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™.
เบ–เป‰เบฒเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เบ–เบทเบเบˆเบฑเบšเบ„เบนเปˆ, RLENGTH เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™ 0, เปเบฅเบฐ 1 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เบ–เป‰เบฒ
เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เปเบกเปˆเบ™เบขเบนเปˆเบ”เป‰เบฒเบ™เบซเบ™เป‰เบฒ, เปเบฅเบฐเบ„เบงเบฒเบกเบเบฒเบง (s)+1 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เบ–เป‰เบฒเบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบขเบนเปˆเบ—เบตเปˆ
เบซเบฅเบฑเบ‡.

เปเบšเปˆเบ‡(s,A,r) เปเบเบ(s, เบ)
string s เบ–เบทเบเปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ‚เบปเบ‡เป€เบ‚เบ”เป‚เบ”เบเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด r เปเบฅเบฐเบ—เบปเปˆเบ‡เบ™เบฒเปเบกเปˆเบ™
loaded เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ array A. เบˆเบณเบ™เบงเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เป€เบšเบดเปˆเบ‡เบžเบฒเบ 11
เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก. เบ–เป‰เบฒ r เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, FS เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

sprintf(format,expr-list)
เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เบˆเบฒเบ expr-เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบญเบตเบ‡โ€‹เบ•เบฒเบก เบฎเบนเบšเปเบšเบš. เป€เบšเบดเปˆเบ‡
เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡ printf() เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

เบเปˆเบญเบ(r,s,t) เบเปˆเบญเบ (r, s)
เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ—เบ™เบญเบฑเบ™เบ”เบฝเบง, เบ„เบทเบเบฑเบ™เบเบฑเบš gsub() เบเบปเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ—เบ™เบญเบฑเบ™เบ”เบฝเบง.

เบเปˆเบญเบ(s,i,n) เบเปˆเบญเบ (s,i)
เบชเบปเปˆเบ‡เบ„เปˆเบฒเบเปˆเบญเบเบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡ s, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ—เบตเปˆเบ”เบฑเบ”เบŠเบฐเบ™เบต i, เบ„เบงเบฒเบกเบเบฒเบง nเบ—เบตเปˆเบขเบนเปˆ เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ n
เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, เบชเปˆเบงเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡ s, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเบนเปˆ i เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

เบฅเบธเปˆเบก(s)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡ s เบเบฑเบšเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบปเบงเบžเบดเบกเปƒเบซเบเปˆเบ—เบฑเบ‡เปเบปเบ”เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเบžเบดเบกเบ™เป‰เบญเบ.

topper(s)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡ s เบ”เป‰เบงเบเบเบฒเบ™เบ›เปˆเบฝเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบปเบงเบžเบดเบกเบ™เป‰เบญเบเบ—เบฑเบ‡เปเบปเบ”เป€เบ›เบฑเบ™เบ•เบปเบงเบžเบดเบกเปƒเบซเบเปˆ.

เบŸเบฑเบ‡เบŠเบฑเบ™เป€เบฅเบเบ„เบฐเบ™เบดเบ”

atan2(y,x) Arctan เบ‚เบญเบ‡ y/x เบฅเบฐเบซเบงเปˆเบฒเบ‡ -pi เปเบฅเบฐ pi.

cos(x) เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบ‡เบฒเบ™โ€‹เบ‚เบญเบ‡ cosineโ€‹, x เปƒเบ™เป€เบฃเบ”เบฝเบ™.

exp(x) เบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เบ‚เบญเบ‡ exponential.

int(x) เบเบฑเบšเบ„เบทเบ™ x เบ•เบฑเบ”เป„เบ›เบ—เบฒเบ‡เบชเบนเบ™.

เบšเบฑเบ™เบ—เบถเบ(x) logarithm เบ—เปเบฒโ€‹เบกเบฐโ€‹เบŠเบฒเบ”โ€‹.

rand() เบ•เบญเบšเบ„เปˆเบฒเบชเบธเปˆเบกเบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบนเบ™ เปเบฅเบฐเปœเบถเปˆเบ‡.

เบšเบฒเบšx) เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบ‡เบฒเบ™ Sineโ€‹, x เปƒเบ™เป€เบฃเบ”เบฝเบ™.

sqrt(x) เบ•เบญเบšเบ„เปˆเบฒเบฎเบฒเบเบ—เบตเปˆเบชเบญเบ‡เบ‚เบญเบ‡ x.

เปเบŠเบ™(เบ•เบปเบงเบขเปˆเบฒเบ‡) เปเบŠเบ™()
เปเบเปˆเบ™เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเป€เบ™เบตเบ”เบ•เบปเบงเป€เบฅเบเปเบšเบšเบชเบธเปˆเบก, เป‚เบ”เบเปƒเบŠเป‰เป‚เบกเบ‡เบ–เป‰เบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡ เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, เปเบฅเบฐ
เบ•เบญเบšเบ„เปˆเบฒเบ‚เบญเบ‡เป€เบกเบฑเบ”เบเปˆเบญเบ™เปœเป‰เบฒ. เบกเบญเบ เปเบเปˆเบ™เบˆเปเบฒเบ™เบงเบ™ Random
เป€เบ„เบทเปˆเบญเบ‡เบเปเบฒเป€เบ™เบตเบ”เป„เบŸเบŸเป‰เบฒเบˆเบฒเบเป‚เบกเบ‡เปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป‚เบ—เบซเบฒเบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡
srand(). เปเบŠเบ™(เบ•เบปเบงเบขเปˆเบฒเบ‡) เปเบกเปˆเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบŠเป‰เปเบฒเบฅเปเบฒเบ”เบฑเบš pseudo random.

9. เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐ output
เบกเบตโ€‹เบšเบปเบ”โ€‹เบฅเบฒเบโ€‹เบ‡เบฒเบ™โ€‹เบœเบปเบ™โ€‹เบœเบฐโ€‹เบฅเบดเบ”โ€‹เบชเบญเบ‡โ€‹, เบžเบดเบก เปเบฅเบฐ printf.

เบžเบดเบกโ€‹เบ‚เบฝเบ™ $0 ORS เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™.

เบžเบดเบก เบ•เบปเบงเบขเปˆเบฒเบ‡1, เบ•เบปเบงเบขเปˆเบฒเบ‡2, ... , เบ•เบปเบงเบขเปˆเบฒเบ‡n
เบ‚เบฝเบ™เบงเปˆเบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡1 FSO เบ•เบปเบงเบขเปˆเบฒเบ‡2 FSO ... เบ•เบปเบงเบขเปˆเบฒเบ‡n ORS เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เบ•เบปเบงเป€เบฅเบ
expressions เบ–เบทเบเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ string เบเบฑเบš OFMT.

printf เบฎเบนเบšเปเบšเบš, expr-เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
duplicates เบเบฒเบ™เบ‚เบฝเบ™เบŸเบฑเบ‡เบŠเบฑเบ™ printf C Library เบเบฑเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เป„เบ”เป‰
เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเป€เบžเบฒเบฐเบ‚เบญเบ‡เบฎเบนเบšเปเบšเบš ANSI C เบ„เบปเบšเบ–เป‰เบงเบ™เปเบกเปˆเบ™เบ–เบทเบเบฎเบฑเบšเบฎเบนเป‰เบ”เป‰เบงเบเบเบฒเบ™เปเบ›เบ‡ %c,
%d, %e, %E, %f, %g, %G, %i, %o, %s, %u, %x, %X เปเบฅเบฐ %%, เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบฎเบญเบšเบ„เบฑเบ”เป€เบฅเบทเบญเบ h เปเบฅเบฐ l.

เบฅเบฒเบเบŠเบทเปˆเบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบตเปˆเบˆเบฐเบžเบดเบก เบซเบผเบท printf เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเป„เบ”เป‰เปƒเบ™เบงเบปเบ‡เป€เบฅเบฑเบš. เบžเบดเบก
เบฎเบนเบšเปเบšเบšเบ•เบปเบงเป€เบฅเบเป‚เบ”เบเปƒเบŠเป‰ OFMT เบซเบผเบท "%d" เบชเปเบฒเบฅเบฑเบšเบˆเปเบฒเบ™เบงเบ™เป€เบ•เบฑเบกเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™. "%c" เบเบฑเบš argument เบ•เบปเบงเป€เบฅเบ
เบžเบดเบกเบ•เบปเบงเบญเบฑเบเบชเบญเบ™ 8 เบšเบดเบ”เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบ™, เบ”เป‰เบงเบ string argument เบกเบฑเบ™เบžเบดเบกเบ•เบปเบงเบ—เบณเบญเบดเบ”
เบฅเบฑเบเบชเบฐเบ™เบฐเบ‚เบญเบ‡เบชเบฒเบ. เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡เบžเบดเบกเปเบฅเบฐ printf เบชเบฒเบกเบฒเบ”เบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒเป„เบŸเบฅเปŒเบซเบผเบท
เบ„เปเบฒเบชเบฑเปˆเบ‡เป‚เบ”เบเบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก > เป€เบญเบเบฐเบชเบฒเบ™, >> เป€เบญเบเบฐเบชเบฒเบ™ เบซเบผเบท | เบ„เปเบฒเบชเบฑเปˆเบ‡ เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบžเบดเบก.
เป€เบ›เบตเบ”เบเบฒเบ™เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡ เป€เบญเบเบฐเบชเบฒเบ™ or เบ„เปเบฒเบชเบฑเปˆเบ‡ เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบ„เบฑเป‰เบ‡โ€‹เบ”เบฝเบง, redirections เบ•เปเปˆโ€‹เบกเบฒโ€‹เบ•เปเปˆโ€‹เบซเบ™เป‰เบฒโ€‹เบเบฑเบšโ€‹เบ—เบตเปˆโ€‹เปเบฅเป‰เบง
เป€เบ›เบตเบ”เบเบฐเปเบช. เป‚เบ”เบเบชเบปเบ™เบ—เบดเบชเบฑเบ™เบเบฒ, เบกเบญเบ เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบŠเบทเปˆเป„เบŸเบฅเปŒ "/dev/stderr"เบเบฑเบš stderr เบ—เบตเปˆ
เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบดเบกเปเบฅเบฐ printf เบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒ stderr. เบกเบญเบ เบเบฑเบ‡เบฎเปˆเบงเบก "-" เปเบฅเบฐ
"/dev/stdout" เบเบฑเบš stdin เปเบฅเบฐ stdout เบ—เบตเปˆเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เป‰เปเบฒเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเบซเบ™เป‰เบฒเบ—เบตเปˆ.

เบŸเบฑเบ‡เบŠเบฑเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™ เบชเบฒเบ เบกเบตโ€‹เบเบฒเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เปเบ›เบ‡โ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹.

เบชเบฒเบ
เบญเปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ $0, เบเบฒเบ™โ€‹เบ›เบฑเบšโ€‹เบ›เบธเบ‡โ€‹เบžเบฒเบโ€‹เบชเบฐโ€‹เบซเบ™เบฒเบกโ€‹, NF, NR เปเบฅเบฐ FNR.

getline เป€เบญเบเบฐเบชเบฒเบ™
เบญเปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ $0 เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™, เบ›เบฑเบšเบ›เบธเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปเบฅเบฐ NF.

เบชเบฒเบ var
เบญเปˆเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ•เปเปˆเป„เบ›เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ var, เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡ NR เปเบฅเบฐ FNR.

เบชเบฒเบ var < เป€เบญเบเบฐเบชเบฒเบ™
เบญเปˆเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ•เปเปˆเป„เบ›เบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™ เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ var.

เบ„เปเบฒเบชเบฑเปˆเบ‡ | getline
เบ—เปเปˆเบšเบฑเบ™เบ—เบถเบเบˆเบฒเบ เบ„เปเบฒเบชเบฑเปˆเบ‡ เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ $0 เปเบฅเบฐเบ›เบฑเบšเบ›เบธเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปเบฅเบฐ NF.

เบ„เปเบฒเบชเบฑเปˆเบ‡ | getline var
เบ—เปเปˆเบšเบฑเบ™เบ—เบถเบเบˆเบฒเบ เบ„เปเบฒเบชเบฑเปˆเบ‡ เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ var.

Getline เปƒเบซเป‰เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™ 0 เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒ, -1 เปƒเบ™เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 1.

เบ„เปเบฒเบชเบฑเปˆเบ‡เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เบ—เปเปˆเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบ /bin/sh.

เบŸเบฑเบ‡เบŠเบฑเบ™ เปƒเบเป‰(เบ•เบปเบงเบขเปˆเบฒเบ‡) เบ›เบดเบ”เป„เบŸเบฅเปŒเบซเบผเบทเบ—เปเปˆเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš เบ•เบปเบงเบขเปˆเบฒเบ‡. เบ›เบดเบ”เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™ 0 เบ–เป‰เบฒ
เบ•เบปเบงเบขเปˆเบฒเบ‡ เป€เบ›เบฑเบ™เป„เบŸเบฅเปŒเป€เบ›เบตเบ”, เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบญเบเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡ เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เปเปˆ, เปเบฅเบฐ -1 เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™. เบ›เบดเบ”
เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบญเปˆเบฒเบ™เป„เบŸเบฅเปŒเบซเบผเบทเบ„เปเบฒเบชเบฑเปˆเบ‡, เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบ›เบฒเบเบญเบทเปˆเบ™เป†เบ‚เบญเบ‡เบ—เปเปˆเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบชเปเบฒเป€เบฅเบฑเบ”
เบซเบผเบทเบญเบฐเบ™เบธเบฅเบฑเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป„เบŸเบฅเปŒ.

เบŸเบฑเบ‡เบŠเบฑเบ™ เบŸเบธเปˆเบกเป€เบŸเบทเบญเบ(เบ•เบปเบงเบขเปˆเบฒเบ‡) flushes เป„เบŸเบฅเปŒเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบซเบผเบทเบ—เปเปˆเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบš เบ•เบปเบงเบขเปˆเบฒเบ‡. เบŸเบธเปˆเบก
เบเบฑเบšเบ„เบทเบ™ 0 เบ–เป‰เบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡ เป€เบ›เบฑเบ™เบเบฐเปเบชเบœเบปเบ™เบœเบฐเบฅเบดเบ”เป€เบ›เบตเบ”เบญเบตเบ -1. Flush เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡ flushes
stdout. Fflush เบ”เป‰เบงเบ argument เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ ("") flushs เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเป€เบ›เบตเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”.

เบŸเบฑเบ‡เบŠเบฑเบ™ เบฅเบฐเบšเบปเบš(เบ•เบปเบงเบขเปˆเบฒเบ‡) เปƒเบŠเป‰ / เบ–เบฑเบ‡ / sh เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ” เบ•เบปเบงเบขเปˆเบฒเบ‡ เปเบฅเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบฐเบ–เบฒเบ™เบฐเบžเบฒเบšเบ—เบฒเบ‡เบญเบญเบเบ‚เบญเบ‡
เบ„เปเบฒเบชเบฑเปˆเบ‡ เบ•เบปเบงเบขเปˆเบฒเบ‡. เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเป€เบฎเบฑเบ”เบเบฑเบš เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก array เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบชเบปเปˆเบ‡เบเบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบ”เป‰เบงเบ
เบฅเบฐเบšเบปเบš เบซเบผเบทเบ—เปเปˆ.

10โ€‹. เบœเบนเป‰โ€‹เปƒเบŠเป‰ เบเปเบฒเบ™เบปเบ”เป„เบงเป‰ เบซเบ™เป‰เบฒเบ—เบตเปˆ
syntax เบชเปเบฒเบฅเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เปเบกเปˆเบ™

เบซเบ™เป‰เบฒเบ—เบตเปˆ เบŠเบทเปˆ( เป‚เบ•เป‰เบ–เบฝเบ‡ ) { เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™ }

เบฎเปˆเบฒเบ‡เบเบฒเบเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เบชเบฒเบกเบฒเบ”เบšเบฑเบ™เบˆเบธเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™

เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ opt_expr

เบšเปเปˆเบˆเบณเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเปƒเบšเบฅเบฒเบเบ‡เบฒเบ™เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™. เบเบฒเบ™เป‚เบ—เบŸเบฑเบ‡เบŠเบฑเบ™เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบŠเป‰เบญเบ™เบเบฑเบ™ เบซเบผเบทเป€เบญเบตเป‰เบ™เบ„เบทเบ™. เบŸเบฑเบ‡เบŠเบฑเบ™
เปเบกเปˆเบ™เบœเปˆเบฒเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป‚เบ”เบเบกเบนเบ™เบ„เปˆเบฒเปเบฅเบฐ arrays เป‚เบ”เบเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡. เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบžเบดเป€เบชเบ”เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป€เบ›เบฑเบ™เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™
เบ•เบปเบงเปเบ›เปเบฅเบฐเบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฑเบš null. เบ•เบปเบงเบขเปˆเบฒเบ‡, cplit(s, เบ) เป€เบญเบปเบฒโ€‹เบฅเบฑเบโ€‹เบชเบฐโ€‹เบ™เบฐโ€‹เบ‚เบญเบ‡โ€‹เปเบ•เปˆโ€‹เบฅเบฐโ€‹เบ„เบปเบ™โ€‹ s
เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ array A เปเบฅเบฐเบชเบปเปˆเบ‡เบ„เบทเบ™เบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡ s.

เบŸเบฑเบ‡เบŠเบฑเบ™ cplit(s, A, n, i)
{
n = เบ„เบงเบฒเบกเบเบฒเบง
เบชเปเบฒเบฅเบฑเบš( i = 1 ; i <= n ; i++ ) A[i] = substr(s, i, 1)
เบเบฑเบšเบ„เบทเบ™ n
}

เบเบฒเบ™เบงเบฒเบ‡เบžเบทเป‰เบ™เบ—เบตเปˆเบžเบดเป€เบชเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™ เปเบฅเบฐเบ•เบปเบงเปเบ›เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เปเบกเปˆเบ™เป€เบ›เบฑเบ™เป€เบฅเบทเปˆเบญเบ‡เบ—เบณเบกเบฐเบ”เบฒ.
เบŸเบฑเบ‡เบŠเบฑเบ™เบชเบฒเบกเบฒเบ”เบญเป‰เบฒเบ‡เบญเบตเบ‡เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”, เปเบ•เปˆเบŠเบทเปˆเบŸเบฑเบ‡เบŠเบฑเบ™เปเบฅเบฐ '(' เบ‚เบญเบ‡
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ•เป‰เบญเบ‡เปเบ•เบฐเป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบชเบฑเบšเบชเบปเบ™เบเบฑเบš concatenation.

11โ€‹. เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™ เบชเบฒเบ, เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ เปเบฅเบฐ เป„เบŸ
เป‚เบ›เบฅเปเบเบฅเบก Awk เปƒเบŠเป‰เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเบ”เบฝเบงเบเบฑเบ™เป€เบžเบทเปˆเบญเปเบเบเบชเบฐเบ•เบฃเบดเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบญเบฒเป€เบฃเบ—เบตเปˆเบกเบตเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™(), เปเบฅเบฐเบšเบฑเบ™เบ—เบถเบ.
เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ—เบปเปˆเบ‡เบ™เบฒ FS. เบกเบญเบ เปƒเบŠเป‰เบงเบดเบ—เบตเบญเบฑเบ™เบชเบณเบ„เบฑเบ™เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™เป€เบžเบทเปˆเบญเปเบšเปˆเบ‡เป„เบŸเบฅเปŒเป€เบ›เบฑเบ™เบšเบฑเบ™เบ—เบถเบ
on RS.

เปเบเบ(expr,A,เบเบฑเบ™เบเบฒ) เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹:

(1) เบ–เป‰เบฒ Sep เบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, เบกเบฑเบ™เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ FS. Sep เบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบซเบผเบท
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด. เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบชเบฒเบ, เบกเบฑเบ™เปเบกเปˆเบ™
เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡.

(2) เบ–เป‰เบฒ Sep = " " (เบŠเปˆเบญเบ‡เบ”เบฝเบง), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ เปเบกเปˆเบ™ trimmed เบˆเบฒเบเบ—เบฒเบ‡เบซเบ™เป‰เบฒเปเบฅเบฐ
เบซเบฅเบฑเบ‡เบ‚เบญเบ‡ เบ•เบปเบงเบขเปˆเบฒเบ‡, เปเบฅเบฐ Sep เบเบฒเบเป€เบ›เบฑเบ™ . เบกเบญเบ เบเปเบฒเบ™เบปเบ” เป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด
เบชเบฐเปเบ”เบ‡เบญเบญเบ /[ \t\n]+/. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ Sep เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด,
เบเบปเบโ€‹เป€เบงเบฑเป‰เบ™โ€‹เบ•เบปเบงโ€‹เบญเบฑเบโ€‹เบชเบญเบ™โ€‹เป€เบกโ€‹เบ•เบฒโ€‹เปเบกเปˆเบ™โ€‹เบ–เบทเบโ€‹เบฅเบฐโ€‹เป€เบฅเบตเบโ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบดเบ‡โ€‹เบ‚เบญเบ‡โ€‹เบ„เบงเบฒเบกโ€‹เบเบฒเบง 1โ€‹, เป€เบŠเบฑเปˆเบ™โ€‹:
split(x, A, "*") เปเบฅเบฐ split(x, A, /\*/) เปเบกเปˆเบ™เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™.

(3) เบ–เป‰เบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡ เบšเปเปˆเปเบกเปˆเบ™ string, เบกเบฑเบ™เบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ string. เบ–เป‰เบฒ เบ•เบปเบงเบขเปˆเบฒเบ‡ เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ
string "", split() เบ•เบญเบš 0 เปเบฅเบฐ A เบ–เบทเบเบ•เบฑเป‰เบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ. เบ–เป‰เบฒโ€‹เบšเปเปˆโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ™เบฑเป‰เบ™โ€‹, เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เปเบกเปˆเบ™
เบเบฒเบ™เบ—เบฑเบšเบŠเป‰เบญเบ™เบเบฑเบ™, เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ null เปเบฅเบฐเบเบฒเบงเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡ Sep in เบ•เบปเบงเบขเปˆเบฒเบ‡, เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ เบ•เบปเบงเบขเปˆเบฒเบ‡ เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™
เบ—เบปเปˆเบ‡เบ™เบฒเบ—เบตเปˆเบ–เบทเบเป‚เบซเบฅเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ A. เบ—เบปเปˆเบ‡เบ™เบฒเบ–เบทเบเบˆเบฑเบ”เปƒเบชเปˆเปƒเบ™ A[1], A[2], ...,
A[n] เปเบฅเบฐ split() เบชเบปเปˆเบ‡เบ„เบทเบ™ n, เบˆเปเบฒเบ™เบงเบ™เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™
เบเบปเบ‡เบเบฑเบ™เบšเบงเบเบซเบ™เบถเปˆเบ‡. เบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเปƒเบ™ A เบ—เบตเปˆเบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเปเบกเปˆเบ™เบžเบดเบกเบ•เบปเบงเป€เบฅเบเปเบฅเบฐ
string

เบเบฒเบ™เปเบเบเบšเบฑเบ™เบ—เบถเบเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ—เบปเปˆเบ‡เบ™เบฒเป€เบฎเบฑเบ”เบงเบฝเบเบ”เบฝเบงเบเบฑเบ™เบเบปเบเป€เบงเบฑเป‰เบ™เบ•เปˆเบญเบ™เบ—เบตเปˆเบ–เบทเบเป‚เบซเบฅเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ $1, $2, ... ,
$NFเบ—เบตเปˆเบขเบนเปˆ เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ $0 เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, NF เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ 0 เปเบฅเบฐเบ—เบฑเบ‡เบซเบกเบปเบ” $i เบเบฑเบš "".

เบกเบญเบ เปเบšเปˆเบ‡เป„เบŸเบฅเปŒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเบฑเบ™เบ—เบถเบเป‚เบ”เบเบงเบดเบ—เบตเบ”เบฝเบงเบเบฑเบ™, เปเบ•เปˆเบกเบตเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ
RS เปเบกเปˆเบ™เปเบ—เป‰ terminator เปเบ—เบ™เบ—เบตเปˆเบˆเบฐเป€เบ›เบฑเบ™เบ•เบปเบงเปเบเบ. (ORS เบเปเปˆเปเบกเปˆเบ™เบ•เบปเบงเบชเบดเป‰เบ™เบชเบธเบ”เบ„เบทเบเบฑเบ™).

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒ FS = ":+" เปเบฅเบฐ $0 = "a::b:", เปเบฅเป‰เบง NF = 3 and $1 = "a", $2 = "b" เปเบฅเบฐ $3 =
"", เปเบ•เปˆเบ–เป‰เบฒ "a::b:" เปเบกเปˆเบ™เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เปเบฅเบฐ RS = ":+", เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบต
เบชเบญเบ‡เบšเบฑเบ™เบ—เบถเบ "a" เปเบฅเบฐ "b".

RS = " "เบšเปเปˆเปเบกเปˆเบ™เบžเบดเป€เบชเบ”.

If FS = "", เปเบฅเป‰เบง เบกเบญเบ เบ—เปเบฒเบฅเบฒเบเบšเบฑเบ™เบ—เบถเบเป€เบ›เบฑเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™, เปเบฅเบฐ, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™,
เปเบšเปˆเบ‡(s,A,"") เบงเบฒเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบ‚เบญเบ‡ s เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ A.

12โ€‹. เบซเบฅเบฒเบเป€เบชเบฑเป‰เบ™ เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ
เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆ เบกเบญเบ เบเบฒเบ™เบ•เบตเบ„เบงเบฒเบก เปเบฒเบ RS เป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด, เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบซเบผเบฒเบเป€เบชเบฑเป‰เบ™เปเบกเปˆเบ™เบ‡เปˆเบฒเบ. เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ RS
= "\n\n+", เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ™เบถเปˆเบ‡โ€‹เบซเบผเบทโ€‹เบซเบผเบฒเบโ€‹เปเบ–เบงโ€‹เบซเบงเปˆเบฒเบ‡โ€‹เป€เบ›เบปเปˆเบฒโ€‹เบšเบฑเบ™โ€‹เบ—เบถเบโ€‹เปเบเบโ€‹เบ•เปˆเบฒเบ‡โ€‹เบซเบฒเบ. เบ–เป‰เบฒ FS = " " (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™),
เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบ™เบฑเป‰เบ™โ€‹เบชเบฒเบโ€‹เปƒเบซเบกเปˆโ€‹เบ”เบฝเบงโ€‹, เป‚เบ”เบโ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เบเบฒเบ™โ€‹เบชเปเบฒโ€‹เบฅเบฑเบšโ€‹เบเบฒเบ™โ€‹ เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡, เบเบฒเบเป€เบ›เบฑเบ™เบŠเปˆเบญเบ‡เปเบฅเบฐเป€เบชเบฑเป‰เบ™เปƒเบซเบกเปˆเบ”เบฝเบงเปเบกเปˆเบ™
เบ•เบปเบงโ€‹เปเบเบโ€‹เบžเบฒเบโ€‹เบชเบฐโ€‹เบซเบ™เบฒเบกโ€‹.

เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเป„เบŸเบฅเปŒเปเบกเปˆเบ™ "ab\nc\n\n", RS = "\n\n+" เปเบฅเบฐ FS = " ", เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบกเบต
เบซเบ™เบถเปˆเบ‡เบšเบฑเบ™เบ—เบถเบ "ab\nc" เบ—เบตเปˆเบกเบตเบชเบฒเบกเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ "a", "b" เปเบฅเบฐ "c". เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ FS = "\n", เปƒเบซเป‰
เบชเบญเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบก "ab" เปเบฅเบฐ "c"; เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ FS = "", เปƒเบซเป‰เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบญเบฑเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš
เบšเบฑเบ™เบ—เบถเบ.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เป€เบชเบฑเป‰เบ™เบ—เบตเปˆเบกเบตเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบซเบผเบทเปเบ–เบšเบ–เบทเบเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เปƒเบซเป‰เบ•เบฑเป‰เบ‡ RS = "\n([ \t]*\n)+".
เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบš awks เบญเบทเปˆเบ™เป†, เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ RS = "" เบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบšเบ„เบทเบเบฑเบ™เบเบฑเบšเบงเปˆเบฒเป€เบชเบฑเป‰เบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ
เบ–เบทเบเบ–เบญเบ”เบญเบญเบเบˆเบฒเบเป„เบŸเบฅเปŒเบ”เป‰เบฒเบ™เบซเบ™เป‰เบฒเปเบฅเบฐเบ”เป‰เบฒเบ™เบซเบฅเบฑเบ‡เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบšเบฑเบ™เบ—เบถเบเบ–เบทเบเบเปเบฒเบ™เบปเบ”เบ„เบทเบเบฑเบšเบงเปˆเบฒ RS =
"\n\n+". Posix เบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰ "\n" เปเบเบเบšเบฑเบ™เบ—เบถเบเบชเบฐเป€เปเบตเป€เบกเบทเปˆเบญ RS = "" เป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡
เบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡ FS. เบกเบญเบ เบšเปเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเบปเบ™เบ—เบดเบชเบฑเบ™เบเบฒเบ™เบตเป‰, เป€เบžเบฒเบฐเบงเปˆเบฒเบเปเบฒเบ™เบปเบ” "\n" เป€เบ›เบฑเบ™
เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™.

เบชเปˆเบงเบ™เปƒเบซเบเปˆเบ‚เบญเบ‡เป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡ RS เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบซเบผเบฒเบเปเบ–เบง, เบ—เปˆเบฒเบ™เบเบฑเบ‡เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
ORS เป€เบ›เบฑเบ™ "\n\n" เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เป„เบฅเบเบฐเบซเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ–เบทเบเบฎเบฑเบเบชเบฒเป„เบงเป‰เบขเบนเปˆเปƒเบ™เบœเบปเบ™เบœเบฐเบฅเบดเบ”.

13โ€‹. เป‚เบ„เบ‡เบเบฒเบ™ เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
เบžเบฒเบเบ™เบตเป‰เบญเบฐเบ—เบดเบšเบฒเบเบ„เปเบฒเบชเบฑเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ„เบ‡เบเบฒเบ™. เบ—เปเบฒเบญเบดเบ” ARGC เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”
เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ–เบฝเบ‡โ€‹เป€เบชเบฑเป‰เบ™โ€‹เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹เบ—เบตเปˆโ€‹เบœเปˆเบฒเบ™โ€‹เป„เบ›โ€‹เปƒเบ™โ€‹เป„เบฅโ€‹เบเบฐโ€‹เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ‚เบญเบ‡โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹. ARGV[0] is
เบ•เบฑเป‰เบ‡เบŠเบทเปˆเบ‚เบญเบ‡เบ™เบฒเบเบžเบฒเบชเบฒ AWK เปเบฅเบฐ ARGV[1] ... ARGV[ARGC-1] เบ–เบทเบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญ
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡ เบเบปเบเป€เบงเบฑเป‰เบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ เปเบฅเบฐเปเบซเบผเปˆเบ‡เป‚เบ›เบผเปเบเบผเบก. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบเบฑเบš

mawk -f prog v=1 A t=เบชเบฐเบšเบฒเบเบ”เบต B

ARGC = 5 เบเบฑเบš ARGV[0] = "mawk", ARGV[1] = "v=1", ARGV[2] = "A", ARGV[3] = "t = เบชเบฐเบšเบฒเบเบ”เบต" เปเบฅเบฐ
ARGV[4] = "เบ‚".

เบ•เปเปˆเป„เบ›, เปเบ•เปˆเบฅเบฐเบ„เบปเบ™ เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ block เปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบš. เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเป‚เบ„เบ‡เบเบฒเบ™เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบ—เบฑเบ‡เบซเบกเบปเบ” เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบ•เบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเป€เบ›เบตเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ.
If ARGC เป€เบ—เบปเปˆเบฒเบเบฑเบš 1, เบเบฐเปเบชเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™ stdin, เบญเบทเปˆเบ™เปเบกเปˆเบ™ arguments เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡
ARGV[1] ... ARGV[ARGC-1] เบ–เบทเบเบเบงเบ”เบชเบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เป„เบŸเบฅเปŒ.

เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ‚เบญเบ‡เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบชเบฒเบกเบŠเบธเบ”: เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เป„เบŸเบฅเปŒ, เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบ
เปเบฅเบฐเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ "". เบเบฒเบ™เบกเบญเบšเปเบฒเบเบกเบตเปเบšเบšเบŸเบญเบก var=string. เป€เบกเบทเปˆเบญเป€เบ›เบฑเบ™ ARGV[i] เบ–เบทเบเบเบงเบ”
เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เบ–เป‰เบฒเบกเบฑเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ‚เป‰เบฒเบก; เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบงเบฝเบ
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡, เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบเปƒเบซเป‰ var เปƒเบŠเป‰เป€เบงเบฅเบฒเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเปเบฅเบฐ i เบ‚เป‰เบฒเบกเป„เบ›เบซเบฒเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ•เปเปˆเป„เบ›; เบญเบทเปˆเบ™ ARGV[i]
เบ–เบทเบเป€เบ›เบตเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เบ–เป‰เบฒเบกเบฑเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เป„เบ”เป‰, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบˆเบฐเบชเบดเป‰เบ™เบชเบธเบ”เบ”เป‰เบงเบเบฅเบฐเบซเบฑเบ”เบญเบญเบ 2. เบ–เป‰เบฒเบšเปเปˆเบกเบต
argument เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡เปเบกเปˆเบ™ argument เป„เบŸเบฅเปŒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบกเบฒเบˆเบฒเบ stdin. Getline เปƒเบ™ a เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบตเบ”เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™. "-" เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เป„เบŸเบฅเปŒเบซเบกเบฒเบเป€เบ–เบดเบ‡ stdin.

เป€เบกเบทเปˆเบญเบเบฐเปเบชเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบ›เบตเบ”, เปเบ•เปˆเบฅเบฐเบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบ—เบปเบ”เบชเบญเบšเบ•เปเปˆเบเบฑเบšเปเบ•เปˆเบฅเบฐเบ„เบปเบ™ เบฎเบนเบšเปเบšเบš, เปเบฅเบฐเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบกเบฑเบ™
เบเบปเบ‡เบเบฑเบ™, เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡ เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” เบ–เบทเบโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹. เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบเบปเบ‡เบเบฑเบ™เบ–เป‰เบฒเบกเบฑเบ™เป€เบ›เบฑเบ™
boolean true (เป€เบšเบดเปˆเบ‡เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เบžเบฒเบเบ—เบต 2). เบ เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เบˆเบฑเบšเบ„เบนเปˆเบฎเบนเบšเปเบšเบšเบเปˆเบญเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ”เป†
เป„เบ”เป‰เบญเปˆเบฒเบ™, เปเบฅเบฐ END เบˆเบฑเบšเบ„เบนเปˆเบฎเบนเบšเปเบšเบšเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”เป„เบ”เป‰เบ–เบทเบเบญเปˆเบฒเบ™เปเบฅเป‰เบง. เบฎเบนเบšโ€‹เปเบšเบšโ€‹เป„เบฅโ€‹เบเบฐโ€‹,
เบ•เบปเบงเบขเปˆเบฒเบ‡1,เบ•เบปเบงเบขเปˆเบฒเบ‡2 , เบเบปเบ‡เบเบฑเบšเบ—เบธเบเป†เบšเบฑเบ™เบ—เบถเบเบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบ‚เบญเบ‡ เบ•เบปเบงเบขเปˆเบฒเบ‡1 เปเบฅเบฐเบเบฒเบ™เปเบ‚เปˆเบ‡เบ‚เบฑเบ™ เบ•เบปเบงเบขเปˆเบฒเบ‡2
เบฅเบงเบกเบ—เบฑเบ‡.

เป€เบกเบทเปˆเบญเบเบฒเบ™เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เป„เบŸเบฅเปŒเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบเบฐเปเบชเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™, เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เปเบ–เบงเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเปเบกเปˆเบ™
เบเบงเบ”เบชเบญเบšเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เป„เบŸเบฅเปŒ, เปเบฅเบฐเบ–เป‰เบฒเบกเบตเบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบกเบฑเบ™เบ–เบทเบเป€เบ›เบตเบ”, เบญเบทเปˆเบ™ เป† END เบฎเบนเบšเปเบšเบš is
เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™เปเบฅเบฐเบ—เบฑเบ‡เบซเบกเบปเบ” END เบซเบธเป‰เบ™ เบ–เบทเบโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹.

เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบกเบญเบšเบซเบกเบฒเบ v=1 เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบซเบผเบฑเบ‡เบˆเบฒเบ เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เบซเบธเป‰เบ™ เบ–เบทเบโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹, เปเบฅเบฐโ€‹
เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบงเบฒเบ‡เป„เบงเป‰เปƒเบ™ v เปเบกเปˆเบ™เบžเบดเบกเบ•เบปเบงเป€เบฅเบ เปเบฅเบฐเบชเบฐเบ•เบฃเบดเบ‡. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบญเปˆเบฒเบ™เบˆเบฒเบเป„เบŸเบฅเปŒ A. เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบ
เบ‚เบญเบ‡เป„เบŸเบฅเปŒ A, t เบ–เบทเบเบ•เบฑเป‰เบ‡เป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡ "เบชเบฐเบšเบฒเบเบ”เบต", เปเบฅเบฐ B เบ–เบทเบเป€เบ›เบตเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™. เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡เป€เบญเบเบฐเบชเบฒเบ™ B,
เป„เบ”เป‰ END เบซเบธเป‰เบ™ เบ–เบทเบโ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹.

เบเบฒเบ™โ€‹เป„เบซเบผโ€‹เบ‚เบญเบ‡โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹ เบฎเบนเบšเปเบšเบš {action} เบฅเบฐเบ”เบฑเบšเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เบ”เป‰เบงเบ

เบ•เปเปˆเป„เบ›
เบเบฒเบ™เบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง opt_expr

เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™. เบ เบ•เปเปˆเป„เบ› เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เปเปˆเป„เบ›เบ–เบทเบเบญเปˆเบฒเบ™ เปเบฅเบฐเบ—เบปเบ”เบชเบญเบšเบฎเบนเบšเปเบšเบš
เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบซเบกเปˆเบ”เป‰เบงเบเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ” เบฎเบนเบšเปเบšเบš {action} เบ„เบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™. เบญเบฑเบ™ เบเบฒเบ™เบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบชเบฒเป€เบซเบ”
เบเบฒเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ—เบฑเบ™โ€‹เบ—เบตโ€‹เบ—เบฑเบ™โ€‹เปƒเบ”โ€‹เบ‚เบญเบ‡โ€‹ END เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบผเบทเบเบฒเบ™เบขเบธเบ”เป€เบŠเบปเบฒเป‚เบ„เบ‡เบเบฒเบ™เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบšเปเปˆเบกเบตเบซเบผเบทเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ
เบเบฒเบ™เบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง เป€เบเบตเบ”เบ‚เบถเป‰เบ™เปƒเบ™ END เบเบฒเบ™เบเบฐเบ—เบณ. เป„เบ”เป‰ opt_expr เบเปเบฒเบ™เบปเบ”เบ„เปˆเบฒเบญเบญเบเบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆ
overridden เบ•เปเปˆเบกเบฒ เบเบฒเบ™เบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง เบซเบผเบทโ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เบ•เปเปˆโ€‹เบกเบฒโ€‹.

เบ•เบปเบงเบขเปˆเบฒเบ‡


1. emulate cat.

{ เบžเบดเบก }

2. emulate wc.

{ chars += length($0) + 1 # เป€เบžเบตเปˆเบกเบญเบฑเบ™เปœเบถเปˆเบ‡เบชเบณเบฅเบฑเบš \n
เบ„เปเบฒ += NF
}

END{ เบžเบดเบก NR, เบ„เปเบฒ, เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ }

3. เบ™เบฑเบšเบˆเปเบฒเบ™เบงเบ™ "เบ„เปเบฒเบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡".

BEGIN { FS = "[^A-Za-z]+" }

{ for(i = 1 ; i <= NF ; i++) word[$i] = "" }

END { เบฅเบถเบšเบ„เบณเบชเบฑเบš[""]
เบชเปเบฒเบฅเบฑเบš (เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปƒเบ™เบ„เปเบฒเบชเบฑเบš) cnt ++
เบžเบดเบก cnt
}

4. เบชเบฐเบซเบผเบธเบšเบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡เบ—เบธเบเป†เบšเบฑเบ™เบ—เบถเบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบ—เปเบฒเบญเบดเบ”.

$1 ~ /credit|gain/ { เบฅเบงเบก += $2 }
$1 ~ /debit|เบเบฒเบ™เบชเบนเบ™เป€เบชเบ/ { sum -= $2 }

เบชเบดเป‰เบ™เบชเบธเบ” { เบžเบดเบกเบฅเบงเบก }

5. เบˆเบฑเบ”เบฎเบฝเบ‡เป„เบŸเบฅเปŒ, เบ›เบฝเบšเบ—เบฝเบšเป€เบ›เบฑเบ™ string

{ line[NR] = $0 "" } # เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš
# เปƒเบ™เบเปเบฅเบฐเบ™เบตเบšเบฒเบ‡เป€เบชเบฑเป‰เบ™เป€เบšเบดเปˆเบ‡เป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบ

END { isort(line, NR)
เบชเปเบฒเบฅเบฑเบš(i = 1 ; i <= NR ; i++) เปเบ–เบงเบžเบดเบก[i]
}

#เบเบฒเบ™เปเบŠเบเบ‚เบญเบ‡ A[1..n]
function isort(A, n, i, j, เบ–เบท)
{
เบชเปเบฒเบฅเบฑเบš( i = 2 ; i <= n ; i++)
{
เบ–เบท = A[j = i]
เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ ( A[j-1] > เบ–เบท )
{ j-- ; A[j+1] = A[j] }
A[j] = เบ–เบท
}
# sentinel A[0] = "" เบˆเบฐเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบ–เป‰เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™
}

เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰ เบšเบฑเบ™เบซเบฒ


เบ„เปเบฒเบ™เบดเบเบฒเบก Posix 1003.2(เบฎเปˆเบฒเบ‡ 11.3) เบ‚เบญเบ‡เบžเบฒเบชเบฒ AWK เปเบกเปˆเบ™ AWK เบ•เบฒเบกเบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเป„เบงเป‰เปƒเบ™ AWK.
เบ›เบทเป‰เบกเบ—เบตเปˆเบกเบตเบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบ—เบตเปˆเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™ SystemVR4 nawk. เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเปเบกเปˆเบ™:

เบŸเบฑเบ‡เบŠเบฑเบ™เปƒเปเปˆ: topper() เปเบฅเบฐ tolower().

เบ•เบปเบงเปเบ›เปƒเปเปˆ: ENVIRON[] เปเบฅเบฐ CONVFMT.

เบ‚เปเป‰เบเปเบฒเบซเบ™เบปเบ”เบเบฒเบ™เปเบ›เบ‡ ANSI C เบชเปเบฒเบฅเบฑเบš printf() เปเบฅเบฐ sprintf().

เบ•เบปเบงเป€เบฅเบทเบญเบเบ„เปเบฒเบชเบฑเปˆเบ‡เปƒเบซเบกเปˆ: -v var=value, เบซเบผเบฒเบ -f เบ—เบฒเบ‡เป€เบฅเบทเบญเบเปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”
เป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบเบฑเบš -W.

Posix AWK เปเบกเปˆเบ™เบฎเบฑเบ”เบเบธเบกเป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เป„เบŸเบฅเปŒเบ•เปเปˆเปเบ–เบง. RS เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เบˆเบฒเบ "\n"
เบเบฑเบšเบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบ”เบฝเบงเบญเบทเปˆเบ™, เปเบ•เปˆเบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเบŠเบญเบเบซเบฒเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰ - เบšเปเปˆเบกเบต
เบ•เบปเบงเบขเปˆเบฒเบ‡เปƒเบ™เบ›เบทเป‰เบก AWK. เป‚เบ”เบเบชเบปเบ™เบ—เบดเบชเบฑเบ™เบเบฒ, RS = "", เป€เบฎเบฑเบ”เปƒเบซเป‰เบซเบ™เบถเปˆเบ‡เบซเบผเบทเบซเบผเบฒเบเป€เบชเบฑเป‰เบ™เบซเบงเปˆเบฒเบ‡เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ
เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบšเบฑเบ™เบ—เบถเบเบซเบผเบฒเบเปเบ–เบง. เป€เบกเบทเปˆเบญโ€‹เปƒเบ”โ€‹ RS = "", "\n" เปเบกเปˆเบ™เบ•เบปเบงเปเบเบเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เปเบต
เป‚เบ”เบเบšเปเปˆเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบกเบนเบ™เบ„เปˆเบฒเปƒเบ™ FS.

เบกเบญเบ, เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰ RS เป€เบžเบทเปˆเบญเป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ›เบปเบเบเบฐเบ•เบด. เป€เบกเบทเปˆเบญ "\n" เบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™
เบšเบฑเบ™เบ—เบถเบ, เบกเบฑเบ™เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ›เบฑเบ™เบŠเปˆเบญเบ‡, เปเบฅเบฐ FS เบเบณเบ™เบปเบ”เป€เบ‚เบ”เบ‚เปเป‰เบกเบนเบ™เบชเบฐเป€เปเบต.

เบเบฒเบ™เป€เบญเบปเบฒเป€เบชเบฑเป‰เบ™เบญเบญเบเปƒเบ™เบ‚เบฐเบšเบงเบ™เบงเบดเบงเบฑเบ”เป€เบงเบฅเบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปƒเบซเป‰เบšเบฒเบ‡เป‚เบ›เบฃเปเบเบกเบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™ เปเบฅเบฐเบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบ›เบธเบ‡เป„เบ”เป‰เป€เบฅเบทเป‰เบญเบเป†
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”. เบ•เบปเบงเบขเปˆเบฒเบ‡, เป€เบฎเบฑเบ”เบ„เบทเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡ 3 เบˆเบฒเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡,

BEGIN { RS = "[^A-Za-z]+" }

{ word[ $0 ] = "" }

END { เบฅเบถเบšเบ„เบณเบชเบฑเบš[ "" ]
เบชเปเบฒเบฅเบฑเบš (เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเปƒเบ™เบ„เปเบฒเบชเบฑเบš) cnt ++
เบžเบดเบก cnt
}

เบ™เบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ„เปเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบเป‚เบ”เบเบเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เปเบ•เปˆเบฅเบฐเบ„เปเบฒเป€เบ›เบฑเบ™เบšเบฑเบ™เบ—เบถเบ. เปƒเบ™โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ›เบฒเบ™โ€‹เบเบฒเบ‡โ€‹,
เบกเบญเบ เบ”เบณโ€‹เป€เบ™เบตเบ™โ€‹เบเบฒเบ™โ€‹เป„เบงโ€‹เป€เบ›เบฑเบ™โ€‹เบชเบญเบ‡โ€‹เป€เบ—เบปเปˆเบฒโ€‹, เป€เบ™เบทเปˆเบญเบ‡โ€‹เบˆเบฒเบโ€‹เบงเปˆเบฒโ€‹เบเบฒเบ™ loop เปƒเบ™โ€‹เบ—เบตเปˆโ€‹เบ‡เปˆเบฒเบโ€‹เบ”เบฒเบโ€‹.

เป‚เบ›เบฃเปเบเบฃเบกเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบ—เบ™เบ—เบตเปˆเปเบ•เปˆเบฅเบฐเบ„เบณเป€เบซเบฑเบ™เป‚เบ”เบเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบ”เบฝเบงเปƒเบ™เป„เบŸเบฅเปŒเป‚เบ›เบฃเปเบเบฃเบก C,

{
RS = "/\*([^*]|\*+[^/*])*\*+/"
# เบ„เบณเป€เบซเบฑเบ™เปเบกเปˆเบ™เบ•เบปเบงเปเบเบเบšเบฑเบ™เบ—เบถเบ
ORS = ""
getline เบ–เบท
}

{ เบžเบดเบกเบ„เป‰เบฒเบ‡ ; เบ–เบท = $0 }

END { printf "%s", เบ–เบท }

Buffering เบซเบ™เบถเปˆเบ‡เบšเบฑเบ™เบ—เบถเบเปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบขเบธเบ”เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบชเบธเบ”เบ—เป‰เบฒเบเบ—เบตเปˆเบกเบตเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡.

เบเบฑเบš เบกเบญเบ, เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบฝเบšเป€เบ—เบปเปˆเบฒ,

x ~ /a\+b/ x ~ "a\+b" x ~ "a\\+b"

เบชเบฐเบ•เบฃเบดเบ‡เบ–เบทเบเบชเบฐเปเบเบ™เบชเบญเบ‡เป€เบ—เบทเปˆเบญ, เบ™เบถเปˆเบ‡เป€เบ—เบทเปˆเบญเป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡ เปเบฅเบฐเป€เบ—เบทเปˆเบญเบ”เบฝเบงเป€เบ›เบฑเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบด. เบชเบธเบ”
เบชเบฐเปเบเบ™เบชเบฐเบ•เบฃเบดเบ‡, เบกเบญเบ เบšเปเปˆเบชเบปเบ™เปƒเบˆเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเปƒเบ™เบ•เบปเบงเบฅเบฐเบ„เบญเบ™เบ—เบตเปˆเบšเปเปˆเบซเบฅเบปเบšเบซเบ™เบตเปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบœเบนเป‰เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบซเบ™เบฑเบ‡เบชเบท AWK
\c เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบเบญเบกเบฎเบฑเบšเบงเปˆเบฒเป€เบ›เบฑเบ™ c เป€เบŠเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบชเบญเบ‡เป€เบ—เบปเปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ meta เปƒเบ™
เบชเบฒเบ. Posix เบ›เบฐเบ•เบดเป€เบชเบ”เบขเปˆเบฒเบ‡เบˆเบฐเปเบˆเป‰เบ‡เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบžเบถเบ”เบ•เบดเบเปเบฒเบ—เบตเปˆเบšเบฑเบ‡เบ„เบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เบขเปˆเบฒเบ‡เบ•เบฑเป‰เบ‡เบซเบ™เป‰เบฒ
เบ—เบตเปˆเบ•เป‰เบญเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเบฒเบเปƒเบ•เป‰เบ„เบงเบฒเบกเบซเบฅเบฒเบเบซเบฅเบฒเบเบ‚เบญเบ‡ awks เป€เบžเบทเปˆเบญเปƒเบŠเป‰เปเบšเบšเบžเบปเบเบžเบฒเบซเบผเบฒเบเปเบ•เปˆเบญเปˆเบฒเบ™เป„เบ”เป‰เบซเบ™เป‰เบญเบ, เบชเบญเบ‡เป€เบ—เบปเปˆเบฒ
เปœเบต.

Posix AWK เบšเปเปˆเบฎเบฑเบšเบฎเบนเป‰ "/dev/std{out,err}" เบซเบผเบท \x hex escape sequences เปƒเบ™เบชเบฐเบ•เบฃเบดเบ‡.
เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบš ANSI C, เบกเบญเบ เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบงโ€‹เป€เบฅเบโ€‹เบ—เบตเปˆโ€‹เบ•เบฒเบกโ€‹เบซเบผเบฑเบ‡ \x เป€เบ›เบฑเบ™โ€‹เบชเบญเบ‡โ€‹เป€เบ›เบฑเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฝเบ‡เปเบ•เปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ 8 เบ•เบปเบงเบญเบฑเบเบชเบญเบ™. เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™ เบŸเบธเปˆเบกเป€เบŸเบทเบญเบ เบ›เบฒเบเบปเบ”เบ•เบปเบงเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เปƒเบ™ เบ
เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰ (1993) AT&T awk เบ›เปˆเบญเบเบญเบญเบเบกเบฒเป€เบกเบทเปˆเบญ netlib, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ posix.
เบฅเบปเบšเบฅเบงเบกเบเบฑเบš เบฅเบถเบš array เบšเปเปˆเปเบกเปˆเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ posix.

Posix เบญเบญเบเบˆเบฒเบเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡ FS = "" undefined, and mentions splitting the
เบšเบฑเบ™เบ—เบถเบเป€เบ›เบฑเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เป€เบ›เบฑเบ™เบเบฒเบ™เบ•เบตเบ„เบงเบฒเบกเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰, เปเบ•เปˆเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™
Portable เปƒเบ™เบ—เบปเปˆเบงเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เบชเบธเบ”เบ—เป‰เบฒเบ, เบ™เบตเป‰เปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™ เบกเบญเบ เบˆเบฑเบ”เบเบฒเบ™เบเปเบฅเบฐเบ™เบตเบžเบดเป€เบชเบ”เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบชเบปเบ™เบ—เบฐเบ™เบฒเบขเบนเปˆเปƒเบ™เบ›เบทเป‰เบก AWK เบซเบผเบท
Posix เบฎเปˆเบฒเบ‡. เบกเบฑเบ™เบšเปเปˆเบ›เบญเบ”เป„เบžเบ—เบตเปˆเบˆเบฐเบชเบปเบกเบกเบธเบ”เบ•เบดเบ–เบฒเบ™เปƒเบ™เบ—เบปเปˆเบง awks เปเบฅเบฐเบ›เบญเบ”เป„เบžเบ—เบตเปˆเบˆเบฐเบ‚เป‰เบฒเบกเป„เบ›เบ•เปเปˆเป„เบ›
เบชเปˆเบงเบ™.

substr(s, i, n) เบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ‚เบญเบ‡ s เปƒเบ™เบˆเบธเบ”เบ•เบฑเบ”เบเบฑเบ™เบ‚เบญเบ‡เบ›เบดเบ”
เป„เบฅเบเบฐเบซเปˆเบฒเบ‡ [1, length(s)] เปเบฅเบฐเป„เบฅเบเบฐเป€เบ„เบดเปˆเบ‡เป€เบ›เบตเบ” [i, i+n). เป€เบกเบทเปˆเบญเบ™เบตเป‰
เบ—เบฒเบ‡เบ•เบฑเบ”เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, string เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™; เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ substr("ABC", 1, 0) = ""
เปเบฅเบฐ substr("ABC", -4, 6) = "A".

เบ—เบธเบเป†เบชเบฐเบ•เบฃเบดเบ‡, เบฅเบงเบกเบ—เบฑเบ‡เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เบเบปเบ‡เบเบฑเบšเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เบขเบนเปˆเบ”เป‰เบฒเบ™เปœเป‰เบฒ,
s ~ // เปเบฅเบฐ s ~ "", เปเบกเปˆเบ™เบชเบฐเป€เบซเบกเบต 1 เป€เบ›เบฑเบ™ match(s, //) เปเบฅเบฐ match(s, ""). เบชเบญเบ‡เบญเบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบ
เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰ RLENGTH to 0

index(s, t) เบชเบฐเป€เบซเบกเบตเบ„เบทเบเบฑเบ™เบเบฑเบš match(s, t1) เบ—เบตเปˆ t1 เปเบกเปˆเบ™เบ„เบทเบเบฑเบ™เบเบฑเบš t เบเบฑเบš
metacharacters เบซเบ™เบต. เป€เบžเบฒเบฐเบชเบฐเบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบต (s, "")
เบชเบฐเป€เบซเบกเบตเบเบฑเบšเบ„เบทเบ™ 1. เบ™เบญเบเบˆเบฒเบเบ™เบตเป‰เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚, index(s,t) != 0 เบ–เป‰เบฒเปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆ t เป€เบ›เบฑเบ™ substring
เบ‚เบญเบ‡ s, เบ•เป‰เบญเบ‡เบเบฒเบ™ index("","") = 1.

เบ–เป‰เบฒ getline เบžเบปเบšเบˆเบธเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบ‚เบญเบ‡เป„เบŸเบฅเปŒ, getline var, เบ›เปˆเบญเบเปƒเบซเป‰ var เบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡. เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™,
เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบ‚เบปเป‰เบฒ END เบเบฒเบ™เบเบฐ เบ—เบณ, $0, เบ—เบปเปˆเบ‡เบ™เบฒเปเบฅเบฐ NF เบกเบตเบ„เบธเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เบˆเบฒเบ
เบšเบฑเบ™เบ—เบถเบเบชเบธเบ”เบ—เป‰เบฒเบ.

เปƒเบŠเป‰ mawk เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    Alt-F
    Alt-F
    Alt-F เบชเบฐเปœเบญเบ‡เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒเบŸเบฃเบต เปเบฅเบฐเป€เบ›เบตเบ”
    เป€เบŸเบตเบกเปเบงเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบชเปเบฒเบฅเบฑเบš DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F เบกเบต Samba เปเบฅเบฐ NFS;
    เบฎเบญเบ‡เบฎเบฑเบš ext2/3/4...
    เบ”เบฒเบงเป‚เบซเบฅเบ” Alt-F
  • 2
    usm
    usm
    Usm เปเบกเปˆเบ™เบŠเบธเบ” slackware เป€เบ›เบฑเบ™เป€เบญเบเบฐเบžเบฒเบš
    เบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ—เบตเปˆเบˆเบฑเบ”เบเบฒเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”
    เบเบฒเบ™เปเบเป‰เป„เบ‚เบเบฒเบ™เป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบช. เบกเบฑเบ™เบฎเบงเบกเบเบฑเบ™
    repositories เบŠเบธเบ”เบ•เปˆเบฒเบ‡เป†เบฅเบงเบกเบ—เบฑเบ‡
    เบ‚เบตเป‰เบ„เป‰เบฒเบ™, เบ‚เบตเป‰เบ„เป‰เบฒเบ™, เบ›...
    เบ”เบฒเบงเป‚เบซเบฅเบ” usm
  • 3
    Chart.js
    Chart.js
    Chart.js เปเบกเปˆเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Javascript เบ—เบตเปˆ
    เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เบฑเบเบญเบญเบเปเบšเบšเปเบฅเบฐเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบ•เป‰เบก
    เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบธเบเบ›เบฐเป€เบžเบ”เป‚เบ”เบเปƒเบŠเป‰ HTML5
    เบญเบปเบ‡เบ›เบฐเบเบญเบšเบœเป‰เบฒเปƒเบš. เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ js เบชเบฐเป€เบซเบ™เบตเบ—เบตเปˆเบ”เบตเป€เบฅเบตเบ”
    array ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” Chart.js
  • 4
    i Report-Designer เบชเบณ เบฅเบฑเบš JasperReports
    i Report-Designer เบชเบณ เบฅเบฑเบš JasperReports
    เปเบฒเบเป€เบซเบ”: iReport/Jaspersoft Studio Support
    เบ›เบฐเบเบฒเบ”: เป€เบ›เบฑเบ™เบชเบฐเบšเบฑเบš 5.5.0,
    Jaspersoft Studio เบˆเบฐเป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™
    เบฅเบนเบเบ„เป‰เบฒเบญเบญเบเปเบšเบšเบชเปเบฒเบฅเบฑเบš JasperReports. iReport
    เบˆเบฐ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” iReport-Designer เบชเปเบฒเบฅเบฑเบš JasperReports
  • 5
    PostInstallerF
    PostInstallerF
    PostInstallerF เบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เบฑเบ‡เปเบปเบ”
    เบŠเบญเบšเปเบงเบ—เบตเปˆ Fedora Linux เปเบฅเบฐเบญเบทเปˆเบ™เป†
    เบšเปเปˆเบฅเบงเบกเป€เบญเบปเบฒเบ•เบฒเบกเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบซเบผเบฑเบ‡เบˆเบฒเบ
    เปเบฅเปˆเบ™ Fedora เป€เบ›เบฑเบ™เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”. เบ‚เบญเบ‡เบกเบฑเบ™
    เบ‡เปˆเบฒเบโ€‹เบชเปเบฒโ€‹เบฅเบฑเบš ...
    เบ”เบฒเบงเป‚เบซเบฅเบ” PostInstallerF
  • 6
    เบชเบฒเบเปเบฎเปˆ
    เบชเบฒเบเปเบฎเปˆ
    เป‚เบ„เบ‡เบเบฒเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เป„เบ”เป‰เบ–เบทเบเบเป‰เบฒเบเป„เบ›
    https://strace.io. strace is a
    เบเบฒเบ™เบงเบดเบ™เบดเบ”เป„เบช, debugging เปเบฅเบฐเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ
    userspace tracer เบชเปเบฒเบฅเบฑเบš Linux. เบกเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰
    เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹เบเบงเบ”โ€‹เบเบฒ ...
    เบ”เบฒเบงโ€‹เป‚เบซเบผเบ”โ€‹เบ•เบดเบ”โ€‹เบ•เบฒเบกโ€‹
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

Ad