คำถามติดแท็ก job-control

7
จะทำอย่างไรเมื่อ Ctrl-C จะไม่ฆ่าการทำงาน?
บางครั้งกระบวนการจะไม่สนใจสัญญาณ SIGINT ที่ส่งโดยCtrl- Cใน Bash ยกตัวอย่างเช่นและman viสมมติว่าคุณไม่ต้องการ google หรืออ่านคู่มือเกี่ยวกับวิธีออกจากกระบวนการทำงานมีลำดับของคีย์ใดบ้างที่จะใช้งานได้ตลอดเวลา (โดยไม่ต้องออกจากเทอร์มินัล)

3
ฉันควรทำอย่างไรเมื่อพบข้อผิดพลาด 'มีการหยุดงาน'
ฉันเผชิญสถานการณ์ประเภทนี้หลายครั้ง ตัวอย่างเช่นเมื่อใดก็ตามที่ฉันพยายามที่จะเปิดไฟล์บางอย่างในการemacsมีsudoสิทธิใช้: sudo emacs tet.c & แทนที่จะถามรหัสผ่าน Ubuntu เพียงแค่เริ่มต้นemacsกระบวนการโดยไม่มีemacsหน้าต่างหรือเอาท์พุทใด ๆ บนเทอร์มินัล (ยกเว้น pid) ดูรูป (ถ้าฉันไม่ได้ใช้ '&' มันจะขอรหัสผ่านจากฉัน): ฉันมีสองคำถามที่เกี่ยวข้องกับเรื่องนี้: ฉันควรทำอย่างไรเมื่อพบข้อผิดพลาด 'มีการหยุดงาน' ฉันจะระบุงานที่หยุดเช่นนั้นทั้งหมดและฆ่าพวกเขาได้อย่างไร เมื่อฉันล้างเทอร์มินัลฉันจะไม่มี pids ของกระบวนการหยุดเหล่านี้ ทำไม Ubuntu / emacs ทำตัวแบบนี้ ทำไมรหัสผ่านไม่ถามฉัน?

4
จะหยุดทุบตีในขณะที่วนรอบทำงานในพื้นหลังได้อย่างไร?
ฉันเริ่มในขณะที่ห่วงดังนี้: while true; do {command}; sleep 180; done & &แจ้งให้ทราบล่วงหน้า ฉันคิดว่าเมื่อฉันฆ่าสถานีนี้ในขณะที่วงจะหยุด แต่มันยังคงไป เป็นเวลาหลายชั่วโมงแล้วที่ฉันฆ่าเซสชันเทอร์มินัล ฉันจะหยุดสิ่งนี้ในขณะที่วนรอบได้อย่างไร

3
ฉันจะเรียกใช้ OpenVPN เป็น root ในพื้นหลังในสคริปต์ได้อย่างไร
ผมอยากจะเขียนสคริปต์ที่เรียกแรกตามด้วยopenvpn sshเมื่อพิมพ์คำสั่ง sudo openvpn ~/my_connection.ovpn ใน command prompt ฉันได้รับผลลัพธ์ต่อไปนี้: ... Wed Jan 4 21:04:35 2017 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0 Wed Jan 4 21:04:35 2017 /sbin/ip link set dev tun0 up mtu 1500 Wed Jan 4 21:04:35 2017 /sbin/ip addr add dev tun0 local IP_FOO peer IP_FOO Wed Jan 4 21:04:35 2017 …

2
จะส่งกระบวนการไปสู่พื้นหลังและพื้นหน้าได้อย่างไร
ถ้าฉันทำping google.com &กระบวนการจะเป็นพื้นหลังและแสดงรายละเอียด ping ให้ฉัน ฉันยังคงสามารถใช้เทอร์มินัลกับคำสั่งอื่น ๆ ได้ แต่เอาต์พุตจาก ping และเอาต์พุตจากคำสั่งอื่น ๆ จะสับสน (ซึ่งไม่ใช่ปัญหา) แต่ฉันไม่สามารถยุติกระบวนการ ping นี้ได้เลย สำหรับสิ่งที่ฉันต้องการนำมาไว้ด้านหน้าเบื้องหน้าแล้วกด ctrl + c หรืออะไรบางอย่าง ฉันลองใช้fgแต่ก็ไม่ได้ผล ดังนั้นฉันping google.com &จะกลับมาทำงานเบื้องหน้าได้อย่างไรหลังจากฉันกดปุ่มย้อนกลับที่ส่วนท้ายของคำสั่ง ping ของฉัน

2
มีวิธีการจัดทำภารกิจแบบอนุกรมบนเทอร์มินัลขณะที่งานกำลังดำเนินการ (โดยไม่ใช้ไฟล์) หรือไม่?
สมมติว่ามี 2 งานt1, t2ซึ่งสามารถดำเนินการได้ในทางอนุกรมดังต่อไปนี้: t1 ; t2 # OR t1 && t2 ตอนนี้สมมติว่าฉันลืมเรียกใช้t2และt1กำลังทำงานอยู่ ฉันสามารถเพิ่มt2ไปยังไปป์ไลน์เพื่อให้สามารถดำเนินการได้หลังจากt1เสร็จสิ้นหรือไม่

4
จะค้นหากระบวนการที่กำลังทำงานอยู่ในเทอร์มินัลได้อย่างไร?
เมื่อฉันพยายามปิดแท็บใน Terminal Gnome จะมีข้อความว่า: ปิดเทอร์มินัลนี้หรือไม่ ยังมีกระบวนการทำงานในเทอร์มินัลนี้ การปิดเทอร์มินัลจะฆ่ามัน ฉันจะรู้ได้อย่างไรว่ามีอะไรยังทำงานอยู่ jobsโปรดทราบว่ามีอะไรในการส่งออกของ ขอบคุณ

3
ความหมายของ & ในตอนท้ายของคำสั่งคืออะไร?
ฉันมีบรรทัดสคริปต์เริ่มต้น: pyprogramm >> /dev/null 2>&1 & ความหมาย: >> /dev/null - redirect stdout to null device 2>&1 - redirect stderr to stdout (that is redirected to null device) แต่สุดท้าย&หมายถึงอะไร

1
“ การตอบสนองเร็วเกินไปหยุด” จะปิดการใช้งาน UPSTART เป็นเวลา 5 นาทีได้อย่างไร
ในสมัยก่อน init daemon ใช้เพื่อปิดการใช้งานที่เกิดขึ้นเร็วเกินไป ฉันค้นพบอันตรายของฉันที่ UPSTART เพิ่งหยุดพวกเขา ตลอดไป ฉันพบตัวควบคุม COUNT และ INTERVAL สำหรับเวลาที่จะหยุดงานที่ตอบสนองรวดเร็ว แต่ฉันไม่พบวิธีการเริ่มต้นงานใหม่หลังจากเวลารอที่ระบุ นี่สำหรับเซิร์ฟเวอร์ระยะไกลที่ต้องเชื่อมต่อผ่าน ssh เพื่อให้ฉันสามารถขุดกลับเข้าไปได้ แต่มันก็มีปัญหาการเชื่อมต่อเป็นประจำและงานที่รันการเชื่อมต่อ ssh กำลังจะตาย! ฉันคาดหวังว่าจะพุ่งพรวดอย่างโง่เขลาเพื่อให้งานดำเนินต่อไป มีวิธีหรือฉันต้องทำอะไรบางอย่างเช่นเรียกใช้งาน cron เพื่อตรวจสอบว่ามันทำงานอยู่หรือไม่และไม่รีสตาร์ท?

1
วิธีการใช้งานเทอร์มินัลต่อไปหลังจากออกคำสั่ง“ หยุดชั่วคราว”?
ฉันพิมพ์suspendในเทอร์มินัลและมันหยุดการทำงานชั่วคราว ฉันจะกลับไปใช้งานเทอร์มินัลปกติได้อย่างไร ฉันได้ลองCtrl+ C, Ctrl+ D, Ctrl+ Q( ตามที่แนะนำไว้ที่นี่ ) และCtrl+ Zแต่ไม่ได้ผล แน่นอนฉันสามารถปิดเทอร์มินัลแล้วเปิดใหม่ได้ แต่ไม่มีวิธีใดที่จะ "กลับมาทำงาน" ในเทอร์มินัลต่อไปได้? ฉันใช้ Ubuntu GNOME 16.04 โดยมีเชลล์เริ่มต้น (ทุบตี)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.