Golfreeze.packetlove.com: Life style of Golfreeze Canon400D Family kammtan.com Jazz Freebsd Unix Linux System Admin guitar Music
All about unix linux freebsd and FAQ for Packetlove.com Web hosting , Mail hosting , VoIP + IP PBX server => command , shell script ,tool , crontab => Topic started by: golfreeze on พฤศจิกายน 19, 2015, 08:40:55 am
-
การใช้คำสั่ง paste -sd ใน unix shell ช่วยในการวางค่าในตำแหน่งสุดท้ายของบันทัด
อยากต้องการเพิ่ม ตัวแปร,เครื่องหมาย,สัญลักษณ์ เข้าไปที่บันทัดสุดท้ายของผลลัพธ์ แล้วให้เขียนออกมา
เช่นมีค่าอยู่เป็นตัวเลขดังกล่าว แล้วจะให้เพิ่มเครื่องหมาย + ลงไปในหลังค่าดังกล่าวในแต่ละบันทัด
#less result.txt
1555.00
367.00
800.00
181.00
800.00
70.00
#less result.txt | paste -sd+
1555.00 + 367.00 + 800.00 + 181.00 + 800.00 + 70.00
แล้วจะให้ ทำการ sum ผลด้วยก็
#less result.txt | paste -sd+ | bc
ง่ายๆเลยเนอะ ^^
-
นำค่าของตำแหน่งสุดท้าย(จำนวนเงิน) มารวมกัน และเอาค่า , ออก แล้วมา sum ดูว่าเป็นทั้งหมดเท่าไร เช่น
sum.txt
05/06 20.00 USD CLOUDFLARE HTTPSWWW.CLOU US 06/06 641.84
07/06 TOPS-PIN KLAO BANGKOK TH 07/06 2,127.50
cat sum.txt | awk -F/ '{print $NF}' | awk '{print $2}' | sed 's/,//g' | paste -sd+ | bc