ฉันจะติดตามเวลาจากบรรทัดคำสั่งได้อย่างไร


11

ฉันกำลังมองหาคำสั่งเพื่อติดตามเวลา

ฉันจินตนาการถึงเวิร์กโฟลว์ต่อไปนี้:

  1. เรียกใช้คำสั่ง
  2. ... ทำอย่างอื่น ...
  3. กลับไปที่หน้าต่างเทอร์มินัลแล้วหยุดคำสั่ง
  4. ในฐานะที่เป็นเอาท์พุทที่คุณได้รับเวลาที่ผ่านไประหว่าง 3 และ 1

@JacobVlijm ฉันชอบความชัดเจนของคำตอบของ Anwar ด้านล่าง ในฐานะผู้ใช้ที่ไม่ใช่ด้านเทคนิคจะเข้าใจได้ง่ายขึ้นว่าคำตอบในเธรดซ้ำซ้อนที่เป็นไปได้ คุณคิดอย่างไร?
orschiro

2
@JacobVlijm ฉันไม่คิดว่านี่เป็นสิ่งที่ซ้ำกัน OP ที่นี่ขอนาฬิกาจับเวลาคำถามที่ถามว่าจะวัดเวลาดำเนินการกระบวนการอย่างไร
เซท

@ เซทโอเคการถอนการลงคะแนน
Jacob Vlijm

@Eric คุณอ่านความคิดเห็นของฉันด้านบน?
เซท

คำตอบ:


20

คำตอบนี้แนะนำให้ใช้

time cat

และใช้Ctrl- Dเพื่อดูเวลา

คุณยังสามารถใช้

time read

และใช้Enterรหัส

ตรวจสอบคำตอบนี้ด้วยคำถามเดียวกัน


2
สิ่งนี้ปรากฏบน XKCD linux cheat sheet store-xkcd-com.myshopify.com/products/linux-cheat-shirt
exussum

nit: จบcatด้วย^Dแทนที่จะ^Cออกไปด้วย 0 แทน 130
wchargin


3

วิธีง่าย ๆ ในการทำคือการใช้เวลาเริ่มต้นและเมื่อคุณหยุดสคริปต์ - หยุดเวลา ในที่สุดพิมพ์ความแตกต่างของเวลา สิ่งนี้สามารถทำได้อย่างง่ายดายด้วย Python:

python -c $'import time;start=time.time();\ntry:\n\twhile True: time.sleep(0.25)\nexcept: print(time.time()-start)'

หรือรุ่นยาวสำหรับการอ่าน:

import time
start=time.time();
try:
    while True: time.sleep(0.25)
except: 
    print(time.time()-start)

การหยุดทำได้ด้วย Ctrl + C


1
while True: passใช้งาน CPU ที่ 100% ฉันขอแนะนำwhile True: time.sleep(1e9)แทน (ใช้signal.pause()งานได้ แต่ต้องการการนำเข้าเพิ่มเติม)
2012rcampion

@ 2012rcampion จุดดีแก้ไขในแล้ว
Sergiy Kolodyazhnyy

1
มันมักจะถือว่าการปฏิบัติที่ไม่ถูกต้องในการตรวจจับข้อยกเว้นทั้งหมด (แม้ว่าในกรณีนี้อาจไม่เกี่ยวข้องมากเกินไป) except KeyboardInterruptจะดีกว่า
Tobias Kienzler

3
@TobiasKienzler ฉันรู้แล้ว หากนี่เป็นโครงการขนาดใหญ่ฉันจะแบ่งสิ่งต่าง ๆ เพื่อตรวจจับข้อยกเว้นหลายรายการ อย่าลังเลที่จะดูรหัสตัวชี้วัดและอื่น ๆ ของฉัน แต่ในกรณีนี้มีเพียงอันเดียวดังนั้นมันจึงไม่เกี่ยวข้องกันเลย นอกจากนี้เป็นวิธีที่รวดเร็วและสกปรก ทำไมจู้จี้กอล์ฟมันเล็กน้อย?
Sergiy Kolodyazhnyy

ฉันเห็นด้วยอย่างยิ่งเพียงคิดว่ามันควรค่าแก่การกล่าวถึง)
Tobias Kienzler
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.