הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   עזרה בBASH (https://hosts.co.il/forums/showthread.php?t=77689)

InetKey.Net 20-08-09 01:00

עזרה בBASH
 
שלום, אני רוצה לספור כמה מספרים מכל הקבצים שקיימים.

למשל יש לי 2 קבצים:
1.txt
2.txt

בתוכם רשום MaxClients=10

אני משתמש בפקודה הבאה כדי לקרוא את הנתונים:
PHP קוד:

awk -F"=" '/MaxClients=[[:digit:]+]/ { print $2 }' *.txt 

עכשיו מה זה עושה בעצם?
זה מציג לי את התוצאה ככה:

קוד:

[root@server resellers]# awk -F"=" '/MaxClients=[[:digit:]+]/ { print $2 }' *.txt
10
10

אני רוצה שזה אוטומתית יספור את שניהם ביחד , כלומר שירשום ישר 20 - שיספור את כל הערכים של MaxClients מכל הקבצים ביחד גם אם יש 100 קבצים.

איך עושים את זה?

אשמח עם תעזרו לי , הפכתי את גוגל!

תודה,
דניס.

Danielx 20-08-09 02:12

PHP קוד:

[root@server1 ~]#  awk -F"=" '/MaxClients=[[:digit:]+]/ { print $2+$2 }' *.txt
20
20 


yonatan 20-08-09 02:24

קוד:


root@gal securehost bc # echo 10 > file.txt
root@gal securehost bc # echo 10 > file1.txt
root@gal securehost bc # echo MaxClients=$(expr `cat file.txt` + `cat file1.txt`)
MaxClients=20

תתבסס על זה, יהיה לך יותר פשוט.

** עריכה

חשבתי על זה טיפה , אם אתה עקשן על AWK ...
קוד:

awk '{i+=$0}END{print "MaxClients="i}' *.txt

InetKey.Net 20-08-09 09:40

תודה רבה יונתן!


כל הזמנים הם GMT +2. הזמן כעת הוא 04:30.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ