10 Χρήσιμες 'Ερωτήσεις και Απαντήσεις Συνέντευξης' στο Linux Shell Scripting


Ο χαιρετισμός της ημέρας. Η απεραντοσύνη του Linux καθιστά δυνατή τη δημιουργία μιας μοναδικής ανάρτησης κάθε φορά. Εμείς «The-Tecmint-Team» εργαζόμαστε για να παρέχουμε στους αναγνώστες μας μοναδικό περιεχόμενο που είναι χρήσιμο για αυτούς από την προοπτική της σταδιοδρομίας καθώς και προσθέτοντας στη Γνωσιακή βάση. Εδώ γίνεται μια προσπάθεια και εναπόκειται στους αναγνώστες μας να κρίνουν πόσο τα καταφέρνουμε.

Έχουμε πολλά σεμινάρια για τη γλώσσα Shell Scripting και τις Ερωτήσεις συνέντευξης για αναγνώστες κάθε είδους. Ακολουθούν οι σύνδεσμοι προς αυτά τα άρθρα.

  1. Shell Scripting Series
  2. Σειρά Ερωτήσεων και Απαντήσεων Συνεντεύξεων

Προσθέτοντας στις αναρτήσεις scripting του κελύφους εδώ, σε αυτό το άρθρο θα εξετάσουμε ερωτήσεις που σχετίζονται με το Linux Shell από την άποψη της συνέντευξης.

1. Πώς θα ακυρώσετε ένα σενάριο φλοιού πριν εκτελεστεί με επιτυχία;

Για παράδειγμα, δημιουργήστε ένα ακόλουθο σενάριο φλοιού ως "anything.sh".

#!/bin/bash
echo "Hello"
exit -1
echo "bye"

Αποθηκεύστε το αρχείο και εκτελέστε το.

sh anything.sh

Hello
exit.sh: 3: exit: Illegal number: -1

Από το παραπάνω σενάριο, είναι σαφές ότι η εκτέλεση πήγε πολύ πριν την έξοδο από την εντολή -1.

2. Πώς να αφαιρέσετε τις κεφαλίδες από ένα αρχείο χρησιμοποιώντας την εντολή στο Linux;

Εδώ είναι η ακριβής εντολή για την αφαίρεση κεφαλίδων από ένα αρχείο (ή την πρώτη γραμμή ενός αρχείου).

sed '1 d' file.txt

Το μόνο πρόβλημα με την παραπάνω εντολή είναι ότι βγάζει το αρχείο σε τυπική έξοδο χωρίς την πρώτη γραμμή. Για να αποθηκεύσουμε την έξοδο στο αρχείο, πρέπει να χρησιμοποιήσουμε τον τελεστή ανακατεύθυνσης που θα ανακατευθύνει την έξοδο σε ένα αρχείο.

sed '1 d' file.txt > new_file.txt

Λοιπόν, ο ενσωματωμένος διακόπτης "-i" για την εντολή sed, μπορεί να εκτελέσει αυτήν τη λειτουργία χωρίς τελεστή ανακατεύθυνσης.

sed -i '1 d' file.txt
3. Πώς θα ελέγξετε το μήκος μιας γραμμής από ένα αρχείο κειμένου;

Ένα 'sed –n 'n p' file.txt', όπου το 'n' αντιπροσωπεύει τον αριθμό γραμμής και το 'p' εκτυπώνει το χώρο μοτίβου (στην τυπική έξοδο). Αυτή η εντολή χρησιμοποιείται συνήθως μόνο σε συνδυασμό με την επιλογή γραμμής εντολών -n. Λοιπόν, πώς να λάβετε τον αριθμό μήκους; Προφανώς! πρέπει να βάλουμε την έξοδο με την εντολή «wc».

sed –n 'n p' file.txt | wc –c

Για να λάβουμε το μήκος του αριθμού γραμμής "5" στο αρχείο κειμένου "tecmint.txt", πρέπει να εκτελέσουμε.

sed -n '5 p' tecmint.txt | wc -c
4. Είναι δυνατή η προβολή όλων των μη εκτυπώσιμων χαρακτήρων από ένα αρχείο κειμένου στο σύστημα Linux; Πώς θα το πετύχετε αυτό;

Πώς να εμφανίσετε μη εκτυπώσιμους χαρακτήρες στο πρόγραμμα επεξεργασίας ‘vi’;

  1. Ανοίξτε το πρόγραμμα επεξεργασίας vi.
  2. Μεταβείτε στη λειτουργία εντολών του επεξεργαστή vi πατώντας [esc] και στη συνέχεια ":".
  3. Το τελευταίο βήμα είναι να πληκτρολογήσετε την εντολή execute [set list], από τη διεπαφή εντολών του επεξεργαστή «vi».

Σημείωση: Με αυτόν τον τρόπο μπορούμε να δούμε όλους τους μη εκτυπώσιμους χαρακτήρες από ένα αρχείο κειμένου, συμπεριλαμβανομένων των ctrl+m (^M<).

5. Είστε Team-Leader μιας ομάδας επιτελείων που εργάζονται για μια εταιρεία xyz. Η εταιρεία σας ζητά να δημιουργήσετε έναν κατάλογο «dir_xyz», έτσι ώστε οποιοδήποτε μέλος της ομάδας να μπορεί να δημιουργήσει ένα αρχείο ή να αποκτήσει πρόσβαση σε ένα αρχείο κάτω από αυτό, αλλά κανείς δεν μπορεί να διαγράψει το αρχείο, εκτός από αυτόν που το δημιούργησε. τι θα κάνεις?
mkdir dir_xyz
chmod g+wx dir_xyz
chmod +t dir_xyz

Η πρώτη γραμμή εντολών δημιουργεί έναν κατάλογο (dir_xyz). Η δεύτερη γραμμή εντολών παραπάνω επιτρέπει στην ομάδα (g) να έχει άδεια για "εγγραφή" και "εκτέλεση" και την τελευταία γραμμή από τα παραπάνω εντολή – Το '+t' στο τέλος των δικαιωμάτων ονομάζεται 'κολλώδες bit'. Αντικαθιστά το «x» και υποδεικνύει ότι σε αυτόν τον κατάλογο, τα αρχεία μπορούν να διαγραφούν μόνο από τους κατόχους τους, τον κάτοχο του καταλόγου ή τον ριζικό υπερχρήστη.

6. Μπορείτε να μου πείτε τα διάφορα στάδια μιας διαδικασίας Linux από τα οποία περνά;

Εδώ είναι τα 4 στάδια της διαδικασίας Linux.

  1. Αναμονή: Διαδικασία Linux σε αναμονή για έναν πόρο.
  2. Εκτέλεση: Αυτήν τη στιγμή εκτελείται μια διαδικασία Linux.
  3. Σταμάτησε: Μια διεργασία Linux διακόπτεται μετά την επιτυχή εκτέλεση ή μετά τη λήψη του σήματος kill.
  4. Zombie : Μια διεργασία λέγεται "Zombie" εάν έχει σταματήσει αλλά εξακολουθεί να είναι ενεργή στον πίνακα διεργασιών.
7. Ποια είναι η χρήση της εντολής cut στο Linux;

Για παράδειγμα, εξαγάγετε τις πρώτες 10 στήλες ενός αρχείου κειμένου «txt_tecmint».

cut -c1-10 txt_tecmint

Για να εξαγάγετε τη 2η, 5η και 7η στήλη του ίδιου αρχείου κειμένου.

cut -d;-f2 -f5 -f7 txt_tecmint
8. Ποια είναι η διαφορά μεταξύ των εντολών «cmp» και «diff»;

Η εντολή «diff» αναφέρει τις αλλαγές που πρέπει να κάνει κάποιος, ώστε και τα δύο αρχεία να φαίνονται ίδια. Ενώ η εντολή «cmp» συγκρίνει τα δύο αρχεία byte-byte και αναφέρει την πρώτη αναντιστοιχία.

9. Είναι δυνατή η αντικατάσταση της εντολής ‘ls’ με την εντολή ‘echo’;
10. Μπορεί να έχετε ακούσει για τα ινώδη. μπορείς να περιγράψεις το inode εν συντομία;

Αυτα για τωρα. Θα βρούμε άλλες ενδιαφέρουσες και ενημερωμένες ερωτήσεις Συνέντευξης, στο επόμενο άρθρο. Μέχρι τότε, Μείνετε συντονισμένοι και συνδεδεμένοι στο linux-console.net. Μην ξεχάσετε να μας δώσετε τα πολύτιμα σχόλιά σας στην παρακάτω ενότητα σχολίων.