शीर्ष 50 शैल स्क्रिप्टिंग साक्षात्कार प्रश्न & जवाब

Anonim

डाउनलोड पीडीऍफ़

1: एक खोल क्या है?

शेल उपयोगकर्ता और कर्नेल के बीच एक इंटरफ़ेस है। हालांकि केवल एक कर्नेल हो सकता है; एक सिस्टम में कई शेल एक साथ चल सकते हैं। इसलिए, जब भी कोई उपयोगकर्ता कीबोर्ड के माध्यम से एक कमांड में प्रवेश करता है, तो शेल इसे निष्पादित करने के लिए कर्नेल के साथ संचार करता है और फिर उपयोगकर्ता को आउटपुट प्रदर्शित करता है।

2: एक विशिष्ट लिनक्स सिस्टम पर आमतौर पर इस्तेमाल किए जाने वाले गोले क्या हैं?

csh, ksh, bash, बॉर्न। आज सबसे अधिक इस्तेमाल किया जाने वाला और उन्नत शेल "बैश" है।

3: फ़ाइल शॉर्टकट के बराबर क्या है जो हमारे पास लिनक्स सिस्टम पर एक विंडो है?

लिनक्स पर "लिंक" का उपयोग करके शॉर्टकट बनाए जाते हैं। दो प्रकार के लिंक हैं जिनका उपयोग "सॉफ्ट लिंक" और "हार्ड लिंक" के रूप में किया जा सकता है।

4: सॉफ्ट और हार्ड लिंक में क्या अंतर है?

सॉफ्ट लिंक फ़ाइल नाम से लिंक होते हैं और साथ ही साथ विभिन्न फाइलसिथम पर भी निवास कर सकते हैं; हालाँकि हार्ड लिंक फ़ाइल के इनकोड के लिंक होते हैं और फ़ाइल के समान ही फाइलसिथम पर होना होता है। मूल फ़ाइल को हटाने से सॉफ्ट लिंक निष्क्रिय हो जाता है (टूटी हुई लिंक) लेकिन हार्ड लिंक को प्रभावित नहीं करता है (हार्ड लिंक अभी भी फ़ाइल की एक कॉपी एक्सेस करेगा)

5: आप लिनक्स में एक स्क्रिप्ट के लिए तर्कों को कैसे पास और एक्सेस करेंगे?

तर्क के रूप में पारित किया जा सकता है:

scriptName "Arg1" "Arg2"

... "Argn" और स्क्रिप्ट के अंदर $ 1, $ 2 ... $ n के रूप में पहुँचा जा सकता है

6: $ # का क्या महत्व है?

$ # स्क्रिप्ट में पारित तर्कों की गिनती दिखाता है।

7: $ * और $ @ के बीच क्या अंतर है?

$ @ प्रत्येक उद्धृत तर्कों को अलग-अलग तर्कों के रूप में मानता है लेकिन $ * एक ही स्ट्रिंग के रूप में स्थितीय मापदंडों के पूरे सेट पर विचार करेगा।

8: फ़ाइल की सामग्री को बदलने के लिए sed कमांड का उपयोग करें (tac कमांड का अनुकरण करें)

जैसे:

if cat filleABCDEFGH

फिर ओ / पी होना चाहिए

EFGHABCD

sed '1! G; h;$!d' file1

यहाँ G कमांड पैटर्न स्पेस में अप्लाई करता है,

एच कमांड कॉपी पैटर्न बफर को बफर रखने के लिए

और d कमांड वर्तमान पैटर्न स्पेस को हटा देता है।

9: एक फ़ाइल को देखते हुए, "DEF" के साथ "ABC" शब्द की सभी घटना को 5 वें पंक्ति से अंत तक केवल उन पंक्तियों में बदलें जिसमें "MNO" शब्द हो

sed -n '5,$p' file1|sed '/MNO/s/ABC/DEF/'

10: किसी फ़ाइल को देखते हुए, प्रत्येक शब्द की गिनती ज्ञात करने के लिए एक कमांड अनुक्रम लिखें।

tr -s "(backslash)040" 

"(बैकस्लैश) 011" "टैब कैरेक्टर" के बराबर एक ऑक्टल है और

"(बैकस्लैश) 012" न्यूलाइन वर्ण के एक अष्टक के बराबर है।

11: आप केवल टेल और हेड कमांड का उपयोग करके किसी फ़ाइल की 99 वीं पंक्ति को कैसे खोजेंगे?

पूंछ +99 file1 | हेड -1 |

12: पूंछ और हेड कमांड का उपयोग किए बिना 10 वीं पंक्ति को प्रिंट करें ।

sed -n '10p' file1

13: मेरे बैश शेल में, मैं चाहता हूं कि मेरा प्रारूप '$ "वर्तमान वर्किंग डायरेक्टरी का हो: होस्टनाम "> और जैसे ही मैं लॉग-इन करूंगा, फाइल को लोड कर दूंगा, जैसे ही आप लॉग इन करेंगे, आप इसे कैसे स्वचालित करेंगे ?

बैश शेल में, हम ".profile" फ़ाइल बना सकते हैं, जो कि जैसे ही मैं लॉग इन करता हूं, उसमें स्वचालित रूप से इनवॉइस हो जाता है और उस पर निम्न सिंटैक्स लिखते हैं।

export PS1='$ `pwd`:`hostname`>' .File1

यहाँ File1 उपयोगकर्ता-परिभाषित कार्यों और "युक्त फाइल है।" इस फाइल को करंट शेल में इनवाइट करता है।

14: किसी फाइल में "s" अनुमति बिट के बारे में बताएं?

"s" बिट को "सेट यूजर आईडी" (SUID) बिट कहा जाता है।

किसी फ़ाइल पर "s" बिट प्रोग्राम के उदाहरण के दौरान फ़ाइल के स्वामी के विशेषाधिकारों के लिए प्रक्रिया का कारण बनता है।

उदाहरण के लिए, वर्तमान पासवर्ड बदलने के लिए "पासवार्ड" कमांड को निष्पादित करने से उपयोगकर्ता अपने नए पासवर्ड को शैडो फाइल पर लिखता है, भले ही उसके मालिक के रूप में "रूट" हो।

15: मैं एक ऐसी डायरेक्टरी बनाना चाहता हूं, जिससे ग्रुप में कोई भी फाइल बना सके और उसमें किसी भी व्यक्ति की फाइल को एक्सेस कर सके, लेकिन कोई भी खुद के द्वारा बनाई गई फाइल के अलावा किसी फाइल को डिलीट नहीं कर सकता है।

हम समूह को पढ़ने के लिए निर्देशिका प्रदान कर सकते हैं और समूह में सभी के लिए पहुँच प्रदान कर सकते हैं और इसके चिपचिपे बिट "टी" को निम्नानुसार सेट कर सकते हैं:

mkdir direc1chmod g+wx direc1chmod +t direc1

16: आप कैसे पता लगा सकते हैं कि सिस्टम कितने समय से चल रहा है?

हम इसे "uptime" कमांड का उपयोग करके पा सकते हैं।

17: कोई भी उपयोगकर्ता किसी विशिष्ट उपयोगकर्ता के बारे में सारी जानकारी कैसे प्राप्त कर सकता है जैसे कि उसका डिफ़ॉल्ट शेल, वास्तविक जीवन का नाम, डिफ़ॉल्ट निर्देशिका, वह कब और कितने समय से सिस्टम का उपयोग कर रहा है?

उंगली "लॉगिननाम"

... जहाँ loginName लॉगिन नाम है

उपयोगकर्ता जिसकी जानकारी अपेक्षित है।

18: $ $ और $ में क्या अंतर है !?

$ $ वर्तमान प्रक्रिया निष्पादित करते समय $ $ की प्रक्रिया आईडी देता है! उस प्रक्रिया की प्रक्रिया आईडी दिखाता है जो हाल ही में पृष्ठभूमि में गई थी।

19: ज़ोंबी प्रक्रियाएं क्या हैं?

ये वे प्रक्रियाएँ हैं जिनकी मृत्यु हो चुकी है लेकिन जिनकी निकास स्थिति अभी भी मूल प्रक्रिया द्वारा नहीं चुनी गई है। भले ही ये प्रक्रियाएँ क्रियाशील न हों फिर भी प्रक्रिया तालिका में इसकी प्रक्रिया आईडी प्रविष्टि है।

20: आप एक मशीन से दूसरी मशीन की नकल कैसे करेंगे?

हम एक मशीन से दूसरी मशीन में कॉपी करने के लिए "ftp," "scp" या "rsync" जैसी उपयोगिताओं का उपयोग कर सकते हैं।

जैसे, ftp का उपयोग करना:

एफ़टीपी होस्टनाम

> फाइल 1 लगाएं

> बाय

कॉपियों के ऊपर, फ़ाइल फ़ाइल 1 को स्थानीय सिस्टम से गंतव्य सिस्टम तक होस्ट करें जिसका होस्टनाम निर्दिष्ट है।

21: मैं लगातार अद्यतन लॉग फ़ाइल की निगरानी करना चाहता हूं, इसे कुशलतापूर्वक प्राप्त करने के लिए किस कमांड का उपयोग किया जा सकता है?

हम टेल-फ़ेन नाम का उपयोग कर सकते हैं। यह केवल std o / p पर प्रदर्शित होने वाली डिफ़ॉल्ट अंतिम 10 लाइनों का कारण बनेगा जो लगातार फ़ाइल के अद्यतन भाग को दिखाता है।

22: मैं एक दूरस्थ सर्वर से कनेक्ट करना चाहता हूं और कुछ कमांड निष्पादित करता हूं, मैं इसे कैसे प्राप्त कर सकता हूं?

हम इसे करने के लिए ssh का उपयोग कर सकते हैं:

ssh उपयोगकर्ता नाम @ serverIP -p sshport

उदाहरण

ssh यह ईमेल पता spambots से संरक्षित किया जा रहा है। इसे देखने के लिए आपको जावास्क्रिप्ट सक्षम करना होगा। -प 22

एक बार ऊपर कमांड निष्पादित हो जाने के बाद, आपको पासवर्ड दर्ज करने के लिए कहा जाएगा

23: मेरे पास 2 फाइलें हैं और मैं उन रिकॉर्ड को प्रिंट करना चाहता हूं जो दोनों के लिए सामान्य हैं।

हम "कम" कमांड का उपयोग इस प्रकार कर सकते हैं:

comm -12 file1 file2 ... 12 उस सामग्री को दबा देगा जो कि हैं

क्रमशः 1 सेंट और 2 एन डी फ़ाइल के लिए अद्वितीय ।

24: फाइबोनैचि श्रृंखला के पहले 10 तत्वों को प्रिंट करने के लिए एक स्क्रिप्ट लिखें।

#!/bin/sha=1b=1echo $aecho $bfor I in 1 2 3 4 5 6 7 8doc=ab=$ab=$(($a+$c))echo $bdone

25: आप लिनक्स से डेटाबेस सर्वर से कैसे जुड़ेंगे?

हम isql उपयोगिता का उपयोग कर सकते हैं जो खुले ग्राहक चालक के साथ निम्नानुसार है:

isql -S serverName -U उपयोगकर्ता नाम-पासवर्ड

26: लिनक्स में 3 मानक धाराएँ क्या हैं?

0 - मानक Input1 - मानक Output2 - मानक त्रुटि

27: मैं file1 से सभी आउटपुट के लिए कमांड को सभी आउटपुट को पढ़ना चाहता हूं file2 को डायरेक्ट करें और फाइल 3 को एरर करें, मैं इसे कैसे प्राप्त कर सकता हूं?

कमांड file2 2> file3

28: जब मैं एक कमांड का उपयोग कर रहा हूं, तो मेरी वर्तमान प्रक्रिया का क्या होगा?

"निष्पादित करें" वर्तमान प्रक्रिया पर नए कांटे की प्रक्रिया को ओवरले करता है; इसलिए जब मैं निष्पादन का उपयोग करके कमांड निष्पादित करता हूं, तो कमांड किसी भी नई प्रक्रिया को बनाए बिना वर्तमान शेल पर निष्पादित हो जाती है।

जैसे, कमांड प्रॉम्प्ट पर " निष्पादित एलएस" निष्पादित करना एलएस निष्पादित करेगा और एक बार एलएस से बाहर निकलने के बाद, प्रक्रिया बंद हो जाएगी

29: आप जाग का उपयोग करके wc -l का कैसे अनुकरण करेंगे?

awk 'END {प्रिंट NR} फ़ाइलनाम'

30: किसी फ़ाइल को "एबीसी" शब्द की पंक्तियों की गिनती ज्ञात करें।

grep -c "ABC" file1

31: grep और egrep में क्या अंतर है?

egrep विस्तारित grep है जो "+" (1 (पिछली घटना का 1 या अधिक घटना)), "?" (0 या 1 पिछले वर्ण की घटना) जैसी "और" | (वैकल्पिक मिलान)

32: आप किसी सिस्टम पर सभी उपयोगकर्ताओं के लॉगिन नाम कैसे प्रिंट करेंगे?

/ etc / छाया फ़ाइल में सूचीबद्ध सभी उपयोगकर्ता हैं।

awk -F ':' '{print $1}' /etc/shadow|uniq -u

33: लिनक्स में एक सरणी कैसे सेट करें?

Ksh में सिंटेक्स:

Set -A arrayname= (element1 element2… element)In bashA=(element1 element2 element3… . elementn)

34: "लूप" के लिए सिंटैक्स लिखें

वाक्य - विन्यास:

for iterator in (elements)doexecute commandsdone

35: आप एक विशिष्ट उपयोगकर्ता द्वारा उपयोग किए जाने वाले कुल डिस्क स्थान को कैसे खोजेंगे?

du -s / home / user1… .where user1 वह उपयोगकर्ता है जिसके लिए कुल डिस्क स्थान की आवश्यकता है।

36: लिनक्स में "अगर" सशर्त के लिए वाक्यविन्यास लिखें?

वाक्य - विन्यास

If condition is successfulthenexecute commandselseexecute commandsfi

37: $ का महत्व क्या है?

कमांड $? निष्पादित की गई अंतिम कमांड की निकास स्थिति देता है।

38: हम किसी फ़ाइल में सभी रिक्त लाइनों को कैसे हटाते हैं?

sed '[(backslash)011(backslash)040]*$/d' file1

जहाँ (बैकस्लैश) 011 एक ऑक्टल स्पेस के बराबर है और

(बैकस्लैश) 040 टैब का एक ऑक्टल समकक्ष है

39: मैं किसी फ़ाइल की प्रत्येक 100 वीं पंक्ति में "ABCDEF" लाइन कैसे डालूँगा ?

sed '100i \ ABCDEF' file1

40: 2 दिनों से कम समय में संशोधित सभी फाइलों को खोजने के लिए एक कमांड अनुक्रम लिखें और प्रत्येक की रिकॉर्ड संख्या प्रिंट करें।

खोजो। -Mtime -2 -exec wc -l {} \;

41: मैं वर्तमान शेल में बनाई गई प्रत्येक फ़ाइल पर सभी उपयोगकर्ताओं के लिए डिफ़ॉल्ट rwx अनुमति कैसे सेट कर सकता हूं?

हम प्रयोग कर सकते हैं:

umask 777

यह प्रत्येक उपयोगकर्ता के लिए बनाई गई हर फ़ाइल के लिए डिफ़ॉल्ट rwx अनुमति सेट करेगा।

42: हम इसकी प्रक्रिया आईडी से प्रक्रिया का नाम कैसे पा सकते हैं?

हम "ps -p ProcessId" का उपयोग कर सकते हैं

43: लिनक्स पर हर फाइल सिस्टम के चार मूलभूत घटक क्या हैं?

बूटब्लॉक, सुपर ब्लॉक, इनोड ब्लॉक और डेटाब्लॉक लिनक्स पर हर फाइल सिस्टम के मूलभूत घटक हैं।

44: बूट ब्लॉक क्या है?

इस ब्लॉक में एक छोटा प्रोग्राम होता है, जिसे "मास्टर बूट रिकॉर्ड" (एमबीआर) कहा जाता है, जो सिस्टम बूट अप के दौरान कर्नेल को लोड करता है।

45: सुपर ब्लॉक क्या है?

सुपर ब्लॉक में फाइल सिस्टम के बारे में सारी जानकारी होती है जैसे कि फाइल सिस्टम का आकार, इसके फ्री डेटा ब्लॉक की संख्या और फ्री इनोड और डेटा ब्लॉक की सूची द्वारा उपयोग किया जाने वाला ब्लॉक आकार।

46: इनोड ब्लॉक क्या है?

इस ब्लॉक में फ़ाइल सिस्टम की प्रत्येक फ़ाइल के साथ-साथ उसके नाम को छोड़कर सभी फ़ाइल विशेषताओं के साथ इनकोड होता है।

47: मैं संलग्नक के रूप में संपीड़ित फ़ाइल के साथ एक मेल कैसे भेज सकता हूं?

zip file1.zip file1 | mailx -s "विषय" प्राप्तकर्ता ईमेल आईडी

ईमेल सामग्री

EOF

48: हम शेल में कमांड एलियासेस कैसे बनाते हैं?

उपनाम उपनाम = "कमांड जिसका उपनाम बनाया जाना है"।

49: फ़ाइल के "c" और "b" अनुमति फ़ील्ड क्या हैं?

"c" और "b" अनुमति क्षेत्र आम तौर पर एक डिवाइस फ़ाइल के साथ जुड़े होते हैं। यह निर्दिष्ट करता है कि क्या कोई फ़ाइल एक विशेष वर्ण फ़ाइल या ब्लॉक विशेष फ़ाइल है।

50: शबंग रेखा का उपयोग क्या है?

प्रत्येक स्क्रिप्ट के शीर्ष पर शेबंग लाइन इंजन के स्थान को निर्धारित करती है जिसका उपयोग स्क्रिप्ट को निष्पादित करने के लिए किया जाना है।