簡體   English   中英

將 bash 中的 ctrl-c 發送到 perf 命令

[英]sending ctrl-c in bash to perf command

linux 中的 perf-stat 命令一直運行,直到按下 crtl-c。 我正在嘗試在腳本中使用此命令來分析循環。 模擬發送 crtl-c 的推薦解決方案是發出帶有 -2 或 -SIGINT 標志的 kill 命令。 但是,這對我不起作用。 我在 RHEL 上。

該腳本或多或少如下所示:

for i in {1..12}
do
pid=$1
perf stat -e dTLB-loads -p $pid > perf.out&
perf_pid=$!
sleep 10
kill -SIGINT $perf_pid
done

即使在 kill 之后 perf 進程仍然處於活動狀態。 當腳本結束時,所有的 ctrl-c 都會在最后執行。

閱讀perf 的手冊頁,我遇到了 --control 選項,這似乎是分析運行命令的一部分的正確方法。 但是,此選項在 RHEL 上不可用。

我可以通過使用此處提到的 kill 的 -INT 選項找到解決方法。 由於某種原因 -2 或 -SIGINT 在 RHEL 上不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM