ฉันรู้ว่า$!
ร้านค้า pid ของกระบวนการ (พื้นหลัง) ล่าสุด แต่%1
หมายความว่าอย่างไร ฉันมักจะเห็นมันด้วยกันและมีผลเช่นเดียวกับkill
kill $!
มีคนให้คำแนะนำแก่ฉันได้ไหม (คำศัพท์เล็ก ๆ เหล่านี้ยากที่ google: - /)
ฉันรู้ว่า$!
ร้านค้า pid ของกระบวนการ (พื้นหลัง) ล่าสุด แต่%1
หมายความว่าอย่างไร ฉันมักจะเห็นมันด้วยกันและมีผลเช่นเดียวกับkill
kill $!
มีคนให้คำแนะนำแก่ฉันได้ไหม (คำศัพท์เล็ก ๆ เหล่านี้ยากที่ google: - /)
คำตอบ:
ผู้%
ออกแบบอ้างถึงงานในรายการงานของเชลล์ปัจจุบันและส่งคืน PID ลองhelp jobs
ดู
man kill
%
แต่ทุบตีก็มีบิวท์อินkill
ซึ่งเป็นบิวด์อินมีความสำคัญเหนือกว่าภายนอกkill
และhelp kill
บอกเราว่าเราสามารถใช้ jobspecs กับบิวด์อินkill
และการใช้ jobpecs นั้นเป็นหนึ่งในสาเหตุที่มันเป็น ในตัว
สิ่งที่คุณต้องการให้ Google คือ man bash
มีหลายวิธีในการอ้างถึงงานในเชลล์ ตัวอักษร% แนะนำชื่องาน หมายเลขงาน n อาจถูกเรียกว่า% n งานอาจถูกอ้างถึงโดยใช้ส่วนนำหน้าของชื่อที่ใช้ในการเริ่มต้นหรือใช้สตริงย่อยที่ปรากฏในบรรทัดคำสั่ง สำหรับการตรวจสอบ% ce หมายถึงงาน ce ที่หยุดทำงาน หากคำนำหน้าตรงกับงานมากกว่าหนึ่งงาน bash จะรายงานข้อผิดพลาด ในทางกลับกันการใช้%? ce หมายถึงงานใด ๆ ที่มีสตริง ce ในบรรทัดคำสั่ง หากสตริงย่อยตรงกับงานมากกว่าหนึ่งงาน bash จะรายงานข้อผิดพลาด สัญลักษณ์ %% และ% + อ้างถึงแนวคิดของเชลล์ของงานปัจจุบันซึ่งเป็นงานสุดท้ายที่หยุดในขณะที่มันอยู่เบื้องหน้าหรือเริ่มในพื้นหลัง งานก่อนหน้านี้อาจถูกอ้างถึงโดยใช้% - เมื่อมีงานปัจจุบันเท่านั้น% - หมายถึงแนวคิดของเชลล์ของงานปัจจุบัน ในเอาต์พุตที่เกี่ยวข้องกับงาน (เช่นเอาต์พุตของงานคำสั่ง) งานปัจจุบันจะถูกแฟล็กด้วยเครื่องหมาย + เสมอและงานก่อนหน้าด้วย - % เดียว (ที่ไม่มีคุณสมบัติงานประกอบ) หมายถึงงานปัจจุบันด้วย
เพียงตั้งชื่องานที่สามารถใช้เพื่อนำมาไว้ในส่วนหน้า:% 1 เป็นคำพ้องความหมายสำหรับ '' fg% 1 '' ทำให้งาน 1 จากพื้นหลังมาสู่เบื้องหน้า ในทำนองเดียวกัน ''% 1 & '' จะกลับมาทำงานที่ 1 อีกครั้งในพื้นหลังเทียบเท่ากับ '' bg% 1 ''
TL; DR: %1
คือหมายเลขงาน 1