ฉันจะเริ่มงานที่หยุดทำงานใน Linux ต่อได้อย่างไร? ฉันใช้ emacs และกด ctrl-z โดยไม่ตั้งใจซึ่งทำให้ฉันกลับไปที่คอนโซล ฉันเห็นได้เมื่อพิมพ์ 'jobs'
[*****]$ jobs
[1]+ Stopped emacs test_queue.cpp
ฉันจะเริ่มงานที่หยุดทำงานใน Linux ต่อได้อย่างไร? ฉันใช้ emacs และกด ctrl-z โดยไม่ตั้งใจซึ่งทำให้ฉันกลับไปที่คอนโซล ฉันเห็นได้เมื่อพิมพ์ 'jobs'
[*****]$ jobs
[1]+ Stopped emacs test_queue.cpp
คำตอบ:
คำสั่งfg
คือสิ่งที่คุณต้องการใช้ คุณยังสามารถระบุหมายเลขงานได้หากมีงานที่หยุดมากกว่าหนึ่งงาน
คำสั่งควบคุมงานทั่วไปใน Linux คือ:
นั่นคือทั้งหมดที่สวยมาก สังเกต% infront ของหมายเลขงานในคำสั่ง - นี่คือสิ่งที่บอกว่า kill คุณกำลังพูดถึงงานและไม่ได้ประมวลผล
fg
และCtrl-C
;)
คุณยังสามารถพิมพ์%<process_name>
; เช่นคุณกด Ctrl-Z เป็น emacs จากนั้นคุณสามารถพิมพ์%emacs
ในคอนโซลและนำกลับมาที่พื้นหน้า
เพียงเพื่อเพิ่มคำตอบอื่น ๆทุบตีช่วยให้คุณข้ามfg
ถ้าคุณระบุหมายเลขงาน
ตัวอย่างเช่นสิ่งเหล่านี้เทียบเท่าและกลับมาทำงานล่าสุด:
%
%%
fg
fg %
งานต่อเหล่านี้ # 4:
%4
fg 4
fg
%
%
มันเยี่ยมมากขอบคุณ! ในฐานะนักพิมพ์แบบสัมผัสฉันพบว่าfg
มันน่ารำคาญมาก (นิ้วเดียวกัน) แต่แล้วเป็นcd
เช่นนั้น
bg %
% &
หากคุณไม่ได้เรียกใช้จากเทอร์มินัลปัจจุบันให้ใช้ps aux | grep <process name>
เพื่อค้นหาหมายเลขกระบวนการ (pid) จากนั้นดำเนินการต่อด้วย:
kill -SIGCONT <pid>
(แม้จะมีชื่อkill
เป็นเพียงเครื่องมือในการส่งสัญญาณไปยังกระบวนการอนุญาตให้กระบวนการสื่อสารกันกันและกัน "สัญญาณฆ่า" เป็นเพียงหนึ่งในสัญญาณมาตรฐานจำนวนมาก)
เคล็ดลับโบนัส: ใส่อักขระตัวแรกของชื่อกระบวนการด้วย[]
เพื่อป้องกันgrep
คำสั่งปรากฏในผลลัพธ์ เช่นเพื่อค้นหาemacs
กระบวนการใช้ps aux | grep [e]macs
fg
ไหม?
Ctrl-z
พิมพ์คำสั่งแล้วดำเนินการต่อ เห็นได้ชัดว่าคุณสามารถเรียกใช้คำสั่งโดยไม่ปล่อย Vim ผ่าน:!
คำสั่ง ed