count lineใน listfile ด้วย eval


มี list file ที่ต้องการ count ใน listfile.txt

# cat listfile.txt
file1.txt
file2.txt
file3.txt

 

แต่ละ file มี 3 line

# wc -l file?.txt
       3 file1.txt
       3 file2.txt
       3 file3.txt
       9 total

 

count line โดยใช้ eval ดังนี้

# eval $(echo "wc -l `cat listfile.txt`")
       3 file1.txt
       3 file2.txt
       3 file3.txt
       9 total

 

ถ้าต้องการ count line แล้ว assign ใส่ตัวแปร ให้ใช้ $() ครอบที่ eval อีก 1 ชั้น

# COUNT=$(eval $(echo "wc -l `cat listfile.txt`") | tail -1 | awk '{print $1}')
# echo $COUNT
9

 

ติดป้ายกำกับ:

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: