همه چیز دربارهی دستور wc
يكشنبه, ۳ آذر ۱۳۹۲، ۰۱:۱۷ ق.ظ
اگه از یه برنامه نویس بخوان که اطلاعاتی در مورد یه فایل متنی مثل تعداد خطوط یا تعداد کلمههای اون فایل رو استخراج کنه احتمالا از سناریویی مثل این استفاده میکنه :
باز کردن فایل - خواندن خط به خط فایل تا رسیدن به انتها - استخراج اطلاعات فایل - تهیه خروجی مناسب
اما اگه اهل اسکریپت نوشتن باشه و از لینوکس استفاده کنه میدونه که لینوکس همیشه ابزارهای مناسبی در اختیارش قرار میده.
یکی از اون ابزارهای پرکاربرد ابزاریه به نام wc که همونطور که گفتم در اسکریپت نویسی بسیار پرکاربرده. راهنمای wc اطلاعات کاملی رو از کارهایی که میتونه انجام بده در اختیار ما میگذاره، در این پست مثالهایی از کار با wc رو خواهید دید.
~ % wc --help
Usage: wc [OPTION]... [FILE]...
or: wc [OPTION]... --files0-from=F
Print newline, word, and byte counts for each FILE, and a total line if
more than one FILE is specified. With no FILE, or when FILE is -,
read standard input. A word is a non-zero-length sequence of characters
delimited by white space.
The options below may be used to select which counts are printed, always in
the following order: newline, word, character, byte, maximum line length.
-c, --bytes print the byte counts
-m, --chars print the character counts
-l, --lines print the newline counts
--files0-from=F read input from the files specified by
NUL-terminated names in file F;
If F is - then read names from standard input
-L, --max-line-length print the length of the longest line
-w, --words print the word counts
--help display this help and exit
--version output version information and exit
Report wc bugs to bug-coreutils@gnu.org
GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
General help using GNU software: <http://www.gnu.org/gethelp/>
For complete documentation, run: info coreutils 'wc invocation'
برای مثالها از یه فایل متنی به نام wc.examples با محتویات زیر استفاده کردم.
lidora.blog.ir test file
==============
fedoraproject.ir
fedoraproject.com
azadrah.net
sito.ir
nerdnews.ir
qtips.ir
tecmint.com
distrowatch.com
linuxreview.ir
نمایش تعداد خطهای فایل متنی
test % wc -l wc.examples
11 wc.examples
که نشون میده فایل ما ۱۱ خط داره.
نمایش تعداد کلمههای فایل متنی
test % wc -w wc.examples
13 wc.examples
نمایش تعداد کاراکتر و تعداد بایتهای فایل متنی
test % wc -m wc.examples
159 wc.examples
test % wc -c wc.examples
159 wc.example
نمایش همزمان موارد بالا
test % wc wc.examples
11 13 159 wc.examples
و در نهایت:
نمایش طول بلندترین خط فایل
test % wc -L wc.examples
24 wc.examples