HOWTO pipeline

Линукс системтэй ажиллаж байхад хамгийн хэрэгтэй үйлдэл бол pipeline (өгөгдөл дамжуулах) хийх юм. "|" гэсэн тэмдэгтээр хэрэглэнэ. Товчхондоо бол нэг командын гаралтыг нөгөө командын оролт болгоход хэрэглэдэг. Өөрөөр хэлбэл 2 өөр командыг ашиглан, нийлүүлэн нэг үр дүн гаргах тун хэрэгтэй үйлдэл юм. Жишээ нь "ls", "sort" гэсэн 2 командыг нэгтгэж нэг үр дүн гаргах тохиолдол:

# ls /
bin etc lost+found sbin sys tmp boot home media opt
initrd misc proc srv usr dev lib mnt root var

# ls / | sort
bin
boot
dev
etc
home
initrd
.........
.........
sys
tmp
usr
var

Тайлбар: "ls" командын үр дүнд ROOT хавтасны файл, хавтаснууд дэлгэцэнд хэвлэгдэх болно. Харин "|" ашиглаад "sort" командыг нэгтгээд үзвэл, сайхан эрэмблэгдээд хэвлэгдэж байгааг харж болно. "ls" командын гаралт нь "sort" командын оролт болж үр дүн хэвлэгдэж байна.

Жишээ нь доорх үйлдлүүдийн үр дүн юу гарахыг үзээрэй.
# ls /usr | sort -r
# ls -ls | wc
# man ls | grep "format"
# ls -ls | awk '{ print $10 }'
# more /var/log/message | grep "kernel"
# more /var/log/message | grep "kernel" | "Memory"


Дүгнэлт:
- Нэг командын мөрөнд хэд хэдэн pipeline ашиглаж болох юм байна.
- "|", "grep" энэ 2 команд хамтрахаараа зэрлэг юм байна.
- "awk" Энэ ёстой гоё доо, ... Зүгээр л "command line" дээр script бичээд элдэвлэнэ ш дээ. Дараа энэ тухай дэлгэрэнгүй бичнэ ээ.

No comments: