Score:0

แยกหนึ่งคอลัมน์ของ strace -c

ธง in

ฉันกำลังพยายามรับชื่อเรียกของระบบสำหรับคำสั่งทั่วไป และไม่มีรายการคำสั่ง
คุณมีความคิดใด ๆ ว่าฉันจะรับรายการการเรียกระบบสำหรับบางคำสั่งได้อย่างไร
ในที่สุดฉันก็พยายามทำสิ่งนั้นด้วยตนเองสำหรับแต่ละคำสั่ง ฉันวิ่ง strace -c ls และเอาต์พุตเป็นดังนี้:

Canzanese_QRS_2015.pdf mal-api-2019.zip
JetBrains.PyCharm.2021.1.2.tar.gz vfvw7g8s8h-2.zip
% เวลา วินาที usecs/call ข้อผิดพลาดในการโทร syscall
------ ----------- ----------- --------- --------- ---- ------------
 18.18 0.000202 17 12 mprotect
 15.21 0.000169 10 17 มม
 12.15 0.000135 15 9 เปิด
 10.17 0.000113 10 11 ปิด
  8.28 0.000092 9 10 สถานะ
  6.39 0.000071 10 7 อ่าน
  4.50 0.000050 6 8 8 การเข้าถึง
  3.78 0.000042 21 2 2 สถิติ
  3.06 0.000034 34 1 พรีลิมิต64
  2.88 0.000032 16 2 ioctl
  2.70 0.000030 10 3 บร
  2.52 0.000028 14 2 rt_sigaction
  2.16 0.000024 24 1 แผนที่มูล
  1.62 0.000018 9 2 เขียน
  1.53 0.000017 9 2 ผู้รับ
  1.26 0.000014 14 1 rt_sigprocmask
  1.26 0.000014 14 1 set_robust_list
  1.17 0.000013 13 1 arch_prctl
  1.17 0.000013 13 1 set_tid_address
  0.00 0.000000 0 1 ผู้บริหาร
------ ----------- ----------- --------- --------- ---- ------------
100.00 0.001111 94 10 รวม

ตอนนี้ฉันจะแยกคอลัมน์สุดท้ายซึ่งเป็นชื่อเรียกของระบบได้อย่างไร และคุณมีความคิดหรือไม่ว่าฉันจะทำให้งานนี้เป็นอัตโนมัติสำหรับคำสั่งอื่น ๆ และบันทึกลงในไฟล์ CSV ได้อย่างไร

ขอบคุณล่วงหน้า

Score:0
ธง in

คุณสามารถใช้ awk สิ่งนี้:

strace -c ls 2>&1 | awk -v p=0 \
  '{ ถ้า ($1 ~ /[\-]{6}/ ) { p = p + 1 } อื่นถ้า ( p == 1 ) { พิมพ์ $NF }}'

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา