پرسش شما مشمول این مطلب
http://bashguide.blogsky.com/pages/XyProblemمی شود. اگر شما حاصل جمع خروجی فرمان wc را میخواهید همانطور که در کد خروجی فرمان درج شده شما نیز دیده میشود wc خودش آن را با عنوان total به شما میدهد و نیازی به کار اضافه ندارد. به هر حال اگر خروجی نمونه خود را به یک فایل مثلا az هدایت کنید آنوقت
var1=($(cat az |cut -d' ' -f1))
اعداد مورد نظر را در یک آرایه به نام var1 قرار میدهد. کهحتماً میتوانید عناصر آرایه را با تشکیل یک حلقه با یکدیگر جمع کرده در متغیر مورد نظر قرار بدهید. مانند:
sum=$((${var1[0]}+${var1[1]}))
برای عضو اول و دوم.
توضیح برای کسانی که شاید ندانند: در سطر اول پرانتزهای بیرونی برای تعیین var1 به عنوان آرایه است. cat از طرق لوله خروجیاش را به برنامه cut میدهد که برای این برنامه دوگزینه تعیین کردهایم، اولی یعنی از محل فاصله و دومی یعنی فیلد اول را برش بدهد. و نتیجه به خاطر استفاده از ترکیب $() بعد از علامت مساوی یعنی به جای عناصر آرایه جایگزین میشوند.