मार% 1 का मतलब क्या है


13

मैंने निम्नलिखित कमांड देखी है:

$ kill %1

इस कथन का उपयोग क्या है?



यह भी ध्यान दें कि zshकाम पूरा हो गया है, जैसे कि चल रहा है htop &और फिर disown %[TAB]स्वत: पूर्ण हो जाएगा disown %htop। मुझे प्यार है zsh:)
new123456

जवाबों:


18

संक्षेप में,

इसका मतलब नौकरी नंबर 1 को मारना है , न कि नंबर एक को प्रोसेस करना

नौकरियों को jobsकमांड के साथ सूचीबद्ध किया जा सकता है ।

मोटे तौर पर, यह आपके द्वारा उपयोग किए जा रहे शेल से संबंधित है, और सिंटैक्स शेल से शेल तक भिन्न हो सकता है।

बैश शेल का उपयोग करते हुए, उपयोगकर्ता के पास एक साथ निष्पादित होने वाली कई प्रक्रियाएं (नौकरियां) हो सकती हैं, जिनकी मूल प्रक्रिया वह शेल है जिसका आप उपयोग कर रहे हैं। Google बैश जॉब कंट्रोल बेसिक्स

अंतर्निहित किल कमांड का उपयोग उन जॉब पाइपलाइनों में से एक को सिग्नल भेजने के लिए किया जाता है। यदि विशिष्ट संकेत निर्दिष्ट नहीं है, तो SIGTERM का उपयोग किया जाता है, जो आमतौर पर काम को समाप्त करता है (इसलिए) मारता है, इसलिए नाम मारता है। लेकिन किसी भी संकेत को निर्दिष्ट किया जा सकता है, जिनमें से कुछ प्रक्रिया को रीसेट कर सकते हैं या गैर-हत्या व्यवहार का कारण बन सकते हैं।

अंत में,% 1 यह निर्दिष्ट करने के लिए कि आप किस काम के लिए सिग्नल भेजना चाहते हैं (कई का!) एक तरीका है। % 1 पृष्ठभूमि नौकरियों के ढेर के शीर्ष पर नौकरी को संदर्भित करता है।


माइनर..लेकिन यह स्टैक नहीं है, यह एक कतार की तरह है।
अंतहीन

6

जब आप उदाहरण के लिए एक प्रक्रिया पृष्ठभूमि:

# find / &
[1] ....

# ls -lr /usr &
[2] ....

अब, यहाँ पृष्ठभूमि में दो प्रक्रियाएँ चल रही हैं और वर्तमान टर्मिनल से जुड़ी हैं। यदि आप करते हैं:% 1 को मारें

पहले, ऊपर 'खोजें' आदेश समाप्त हो जाएगा। जैसा कि एंडर्स ने कहा है कि आप वर्तमान में टर्मिनल पर चल रही पृष्ठभूमि प्रक्रियाओं को सूचीबद्ध कर सकते हैं और उन्हें मार सकते हैं:

# jobs
[1] find / ...
[2] ls -lr ...

# kill %1
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.