Score:1

ฆ่าแอปในกรอบเวลาที่กำหนด สคริปต์ทุบตี

ธง us

ฉันยังใหม่กับ bash และฉันกำลังพยายามทำสิ่งนี้ นี่คือรหัสหลอก:

id= "pidof rhytmbox" (rhytmbox เปลี่ยน pid ทุกครั้งที่เริ่ม)

echo "เวลาป้อนข้อมูล: "
อ่านเวลา

นอน $time
ฆ่า $pid

คุณช่วยฉันได้ไหม

Score:1
ธง us
pid=$(pidof rhythmbox)
echo $pid

echo "Enter time: "
read time
sleep $time
kill $pid

This one worked!

Score:0
ธง cn

หากคุณต้องการรันคำสั่งของคุณโดยจำกัดเวลา คุณสามารถใช้การหมดเวลาได้:

#!/bin/bash

อ่าน -r -p \
    "เวลาอินพุตเป็นนาที:" ระยะเวลา

[[ ! $ระยะเวลา =~ [^0-9] ]] && \
    หมดเวลา ${duration}m ตั้งค่า rhytmbox &>/dev/null &

อ่าน มีตัวเลือกพร้อมท์ที่แสดงก่อนที่จะพยายามอ่านอินพุต คุณสามารถใช้คำสั่ง regex เพื่อให้แน่ใจว่าการป้อนข้อมูลของผู้ใช้ประกอบด้วยตัวเลขเท่านั้น ตอนนี้ฉันมักจะต้องการใส่ ระยะยาว แอปพลิเคชันในพื้นหลังในกรณีที่ฉันปิดเทอร์มินัล คุณสามารถทำได้ด้วย เซ็ตซิด สั่งการ &

Score:0
ธง om

ฉันจะให้คำแนะนำบางอย่าง

Bash มีบางวิธีในการกำหนดเอาต์พุตของคำสั่งให้กับตัวแปร

pid=$(pidof ด้านบน)
pid=`pidof บนสุด` 

ที่เหลือคุณมาถูกทางแล้ว คุณน่าจะ ตรวจสอบว่าผู้ใช้ป้อนจำนวนเต็มจริงและไม่ใช่ข้อความอื่นเช่น ครึ่งชั่วโมง.

John Boro avatar
us flag
ขอบคุณ --- pid=$(pidof ริธึมบ็อกซ์) ก้อง $pid echo "ป้อนเวลา: " อ่านเวลา นอน $time ฆ่า $pid
vidarlo avatar
om flag
หากสิ่งนี้ตอบคำถามของคุณ โปรด[ยอมรับ](https://askubuntu.com/help/someone-answers) โดยคลิกเครื่องหมายถูกทางด้านซ้าย หากคุณได้รับคำตอบใหม่และดีกว่า คุณสามารถเปลี่ยนคำตอบที่ยอมรับได้ทุกเมื่อ

โพสต์คำตอบ

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