10 najlepszych pytań i odpowiedzi na wywiad z bash

10 najlepszych pytań i odpowiedzi na wywiad z bash
Bash Scripting to bardzo użyteczny i potężny język programowania, który służy głównie do zautomatyzowania dowolnego ręcznego zadania. Poszukiwacz pracy, który chce być testerem automatycznym lub programistą BASH, musi zmierzyć się z popularnymi pytaniami w wywiadzie. W Linux istnieją różne typy skorupy. Jednym z popularnych i najczęściej używanych scenariuszy Shell jest Bourne Again Shell lub Bash. 30 Ważne pytania i odpowiedzi na temat języka scenariuszy Bash opisano w tym artykule, aby przygotować się do pracy.

#01. Co to jest skrypt bash?

Skrypt Bash to język programowania powłoki. Zasadniczo uruchamiamy wiele rodzajów poleceń powłoki z terminala, wpisując każde polecenie osobno, które wymagają czasu i wysiłków. Jeśli musimy ponownie uruchomić te same polecenia, musimy ponownie wykonać wszystkie polecenia z terminala. Ale używając skryptu bash, możemy przechowywać wiele instrukcji poleceń powłoki w jednym pliku bash i wykonywać plik w dowolnym momencie przez jedno polecenie. Wiele zadań związanych z podawaniem systemu, instalacja programu, kopia zapasowa dysku, ocena dzienników itp. można wykonać za pomocą odpowiedniego skryptu Bash.

#02. Jakie są zalety korzystania z scenariuszy Bash?

Skrypt Bash ma wiele zalet, które opisano poniżej:

  • Jest łatwy w użyciu i nauczania się.
  • Wiele ręcznych zadań, które należy często działać, można wykonać automatycznie, pisząc skrypt bash.
  • Sekwencja wielu poleceń powłoki można wykonać za pomocą jednego polecenia.
  • Skrypt Bash napisany w jednym systemie operacyjnym Linux może łatwo wykonać w innym systemie operacyjnym Linux. Jest więc przenośny.
  • Debugowanie w Bash jest łatwiejsze niż inne języki programowania.
  • Składnia i polecenia wiersza polecenia, które są używane w terminalu, są podobne do poleceń i składni używanej w skrypcie Bash.
  • Skrypt bash może być używany do łączenia z innymi plikami skryptu.

#03. Wspomnij o wadach scenariuszy Bash

Niektóre wady skryptu Bash są wspomniane poniżej:

  • Działa wolniej niż inne języki.
  • Niewłaściwy skrypt może uszkodzić cały proces i wygenerować skomplikowany błąd.
  • Nie nadaje się do opracowania dużej i złożonej aplikacji.
  • Zawiera mniej struktury danych w porównaniu z innymi standardowymi językami programowania.

#04. Jakie rodzaje zmiennych są używane w Bash?

Dwa rodzaje zmiennych można użyć w skrypcie Bash. To są:
Zmienne systemowe
Zmienne, które są wstępnie zdefiniowane i utrzymywane przez system operacyjny Linux, nazywane są zmiennymi systemowymi. Tego rodzaju zmienne są zawsze używane przez wielką literę. Domyślne wartości tych zmiennych można zmienić na podstawie wymagań.
„Set”, „Env” I 'Printenv„Polecenia mogą być używane do wydrukowania listy zmiennych systemowych.
Przykład:

#!/bin/bash
# Zmienne systemowe drukowania
#PRINT BASH Nazwa powłoki
Echo $ bash
# Wersja drukowania powłoki bash
Echo $ bash_version
# Nazwa Direct Directory Nazwa katalogu domowego
echo $ dom

Zmienna zdefiniowana przez użytkownika
Zmienne, które są tworzone i utrzymywane przez użytkowników, nazywane są zmiennymi zdefiniowanymi przez użytkownika. Są one również nazywane zmiennymi lokalnymi. Tego rodzaju zmienne można zadeklarować za pomocą małej litery lub wielkimi lub zarówno literami, jak i małymi literami. Ale lepiej jest unikać używania całej wielkiej litery w celu odróżnienia zmiennych od zmiennych systemowych.
Przykład:

#!/bin/bash
NUM = 100
Echo $ num

#05. Jak deklarować i usuwać zmienne w Bash?

Zmienną można zadeklarować w BASH według typu danych lub bez typu danych. Jeśli jakakolwiek zmienna bash jest zadeklarowana bez ogłosić polecenie, wówczas zmienna będzie traktowana jako ciąg. Zmienna bash jest zadeklarowana ogłosić polecenie zdefiniowania typu danych zmiennej w tej deklaracji czasowej.

-R, -i, -a, -a, -l, -u, -t I -X Opcje można użyć z ogłosić polecenie zadeklarowania zmiennej o różnych typach danych.

Przykład:

#!/bin/bash
#Zmienna declare bez żadnego typu
NUM = 10
#Wartości zostaną połączone, ale nie dodane
wynik = $ num+20
Echo $ wynik
#Declare zmienna z typem liczb całkowitych
Deklaruj -i Num = 10
#Wartości zostaną dodane
Deklaruj wynik -i = num+20
Echo $ wynik

nieoprawny Polecenie służy do usunięcia dowolnej zmiennej bash. Zmienna będzie niedostępna lub niezdefiniowana po użyciu nieoprawny Komenda.

Przykład:

#!/bin/bash
str = "Linux wskazówka"
Echo $ str
Unset $ str
Echo $ str

#06. Jak dodać komentarze w skrypcie Bash?

Komentarze z pojedynczym liniowym i wieloletnim mogą być używane w skrypcie Bash. '#„Symbol jest używany do komentarza jednoliniowego. '<<' symbol z ogranicznikiem i „:” z pojedynczym (') są używane do dodawania komentarza wieloletniego.

Przykład:

#!/bin/bash
#Printu tekst [komentarz pojedynczego wiersza]
Echo „Bash Programming”
<Obliczyć sumę
Z dwóch liczb [komentarz wielopoziomowy]
Dodaj komentarz
num = 25+35
Echo $ num
: '
Połącz dwa
Dane ciągów [komentarz wielopasmowy]
'
String = "Hello"
Echo $ string „świat”

#07. Jak możesz połączyć struny w skrypcie Bash?

Wartości ciągów można łączyć w BASH na różne sposoby. Zwykle wartości łańcuchowe są łączone poprzez umieszczenie razem, ale istnieją inne sposoby w BASH, aby połączyć dane ciągów.

Przykład:

#!/bin/bash
#Initializuj zmienne
str1 = "php"
str2 = „bash”
str3 = "perl"
# Drukuj sznur razem z miejscem
echo $ str1 $ str2 $ str3
#Combine wszystkie zmienne i przechowuj w innej zmiennej
str = "$ str1, $ str2 i $ str3"
#Combine Inne dane ciągu z istniejącą wartością łańcucha
str+= "są językami skryptowymi"
#Print the String
Echo $ str

#08. Które polecenia służą do drukowania wyjścia w Bash?

'Echo' I „printf” Polecenia mogą być używane do wydrukowania wyjścia w Bash. 'Echo„Polecenie służy do wydrukowania prostego wyjścia i „printf” Polecenie służy do wydrukowania sformatowanego wyjścia.

Przykład:

#!/bin/bash
#Print tekst
Echo „Witamy w Linuxhint”
site = "Linuxhint.com "
#Print sformatowany tekst
printf "%s to popularna strona blogowa \ n" $ witryna

#09. Jak wziąć wkład z terminalu w BASH?

'Czytać' Polecenie jest używane w skrypcie BASH, aby pobrać wejście z terminalu.

Przykład:

#!/bin/bash
#PRINT Wiadomość
Echo „Wprowadź swoje imię”
#Wprowadź wejście od użytkownika
Przeczytaj nazwę
# Wydrukuj wartość nazwy $ z innym ciągiem
echo „Twoje imię to $ Nazwa”

#10. Jak używać argumentów wiersza poleceń w Bash?

Argumenty wiersza poleceń są odczytywane przez 1 $, 2 $, 3 $… $ n zmienne. Wartości argumentów wiersza polecenia są podane w terminalu podczas wykonywania skryptu Bash. 1 USD służy do odczytania pierwszego argumentu, 2 USD służy do odczytania drugiego argumentu i tak dalej.

Przykład:

#!/bin/bash
#Sprawdź, czy dowolne argumenty są dostarczane lub nie
jeśli [[$# -eq 0]]; Następnie
echo „Nie podano żadnych argumentów."
Wyjście 0
fi
#Store pierwsza wartość argumentu
kolor = 1 USD
# Wydrukuj argument z innym ciągiem
printf „Ulubiony kolor to %s \ n" $ kolor

#11. Czy wbij się słabo wpisanym językiem? Dlaczego?

Tak, Bash jest uważany za słabo lub luźno wpisany język, ponieważ nie wymaga zadeklarowania rodzaju danych w momencie deklaracji zmiennej. Wszystkie zmienne bash są domyślnie traktowane jako ciąg, a typ zmiennej zostanie ustawiony na podstawie bieżącej wartości. Zmienne bash z typami danych można zdefiniować za pomocą za pomocą ogłosić polecenie z określoną opcją. Ale opcje definiowania typów danych są ograniczone i nie obsługują wszystkich rodzajów danych. Na przykład, platforma Typ danych nie można zadeklarować za pomocą ogłosić Komenda.

Przykład:

#!/bin/bash
#Rodzaj danych $ myvar jest domyślnie ciąg
myvar = 29
# Wydrukuj zmienną
Echo $ myvar
# Deklaruj zmienną liczbową $ o wartości 67
Deklaruj liczbę -i = 67
#Print zmienna
Echo $ liczba
# Przypisz dane ciągów do zmiennej numerycznej. Wygeneruje następujący wiersz
# Błąd składni i wartość numeru $ nie zmieni się
numer = „Lubię bash”
Echo $ liczba

#12. Jak odczytać drugie słowo lub kolumnę z każdego wiersza pliku?

Drugie słowo lub kolumna pliku można odczytać w skrypcie Bash za pomocą różnych poleceń Bash, takich jak „awk”, „sed” itp. Tutaj użycie „awk” jest pokazany w poniższym przykładzie.
Przykład: Przypuśćmy, kurs.plik txt zawiera następującą zawartość i wydrukowaliśmy tylko drugie słowo każdego wiersza tego pliku.

CSE201 Programowanie Java
Struktura danych CSE303
CSE408 Programowanie UNIX
#!/bin/bash
# Następujący skrypt wydrukuje drugie słowo każdego wiersza z kursu.plik txt.
# Wyjście polecenia CAT przejdzie do polecenia AWK, które przeczyta drugie słowo
# z każdej linii.
Echo 'Cat Cours.txt | awk 'drukuj 2 $' '

#13. Jak zadeklarować i uzyskać dostęp do zmiennej tablicy w Bash?

Zarówno tablice numeryczne, jak i asocjacyjne są obsługiwane przez skrypt bash. Zmienną tablicy można zadeklarować z poleceniem DEKALE. -A Opcja jest używana z poleceniem Declare, aby zdefiniować tablicę numeryczną i -A Opcja jest używana z oświadczeniem Deklaracji w celu zdefiniowania tablicy asocjacyjnej w Bash. Bez polecenia zadeklarowania tablica numeryczna można zdefiniować tylko w Bash.

Przykład:

#!/bin/bash
# Deklaruj prostą tablicę numeryczną
arr1 = (Codeigniter laravel ReactJS)
# Wydrukuj pierwszą wartość elementu $ arr1
echo $ arr1 [0]
# Deklaruj tablicę numeryczną za pomocą polecenia Declare
Declare -a arr2 = (html css JavaScript)
# Wydrukuj wartość drugiego elementu $ arr2
echo $ arr2 [1]
# Zadeklaruj tablicę asocjacyjną za pomocą oświadczenia DEKLARE
Declare -a arr3 = ([framework] = laravel [cms] = WordPress [biblioteka] = jQuery)
# Wydrukuj wartość trzeciego elementu $ arr3
echo $ arr3 [biblioteka]

Wszystkie elementy tablicy można uzyskać za pomocą dowolnej pętli lub „*” jako indeksu tablicy.

#14. Jak można zastosować instrukcje warunkowe w BASH?

Najczęstszym stwierdzeniem warunkowym w większości języków programowania jest If-Elseif-Else oświadczenie. Składnia If-Elseif-Else Oświadczenie w Bash jest nieco inne niż inne języki programowania. 'Jeśli' stwierdzenie można zadeklarować na dwa sposoby w skrypcie Bash i każdy rodzaj 'Jeśli' blok musi być zamknięty „fi”. 'Jeśli' Oświadczenie można zdefiniować za pomocą trzecich nawiasów lub pierwszych nawiasów, takich jak inne języki programowania.

Składnia:
A.

Jeśli [warunek];
Następnie
sprawozdania
fi

B.

Jeśli [warunek]; Następnie
stwierdzenia 1
w przeciwnym razie
Oświadczenie 2
fi

C.

Jeśli [warunek]; Następnie
stwierdzenie 1
elif [warunek]; Następnie
Oświadczenie 2
… .
w przeciwnym razie
stwierdzenie n
fi

Przykład:

#!/bin/bash
# Przypisz wartość do $ n
n = 30
# Sprawdź $ n jest większe niż 100 lub nie
jeśli [$ n -GT 100]; Następnie
Echo „$ n jest mniej niż 100”
# Sprawdź $ n id większy niż 50 lub nie
Elif [$ N -GT 50]; Następnie
Echo „$ n to mniej niż 50”
w przeciwnym razie
Echo „$ n to mniej niż 50”
fi

#15. Jak porównywać wartości w Bash?

Sześć rodzajów operatorów porównawczych można użyć w BASH do porównania wartości. Istnieją dwa sposoby korzystania z tych operatorów w BASH w zależności od typu danych. Te są wymienione poniżej.

Porównanie ciągów COMARISON INTEGER Opis
== -Eq Służy do sprawdzenia równości
!= -ne Służy do sprawdzania nierówności
< -Lt Jest używany sprawdź, czy pierwsza wartość jest niższa niż druga wartość, czy nie
> -Gt Jest używany sprawdź, czy pierwsza wartość jest większa niż druga wartość, czy nie
<= -le Jest używany sprawdź, czy pierwsza wartość jest mniejsza lub równa drugiej wartości lub nie
> = -ge Jest używany sprawdź, czy pierwsza wartość jest większa lub równa drugiej wartości lub nie

Przykład:

#!/bin/bash
# Zainicjuj $ n
n = 130
o = „nawet”
# Sprawdź $ n jest większe lub równe 100 lub nie używa „-ge”.
jeśli [$ n -ge 100]; Następnie
Echo „$ n jest większe lub równe 100”
w przeciwnym razie
Echo „$ n jest mniej niż 100”
fi
# Sprawdź $ n jest równe lub dziwne przy użyciu operatora '=='
if (($ o == "nawet")); Następnie
echo „liczba jest nawet”
w przeciwnym razie
echo „liczba jest dziwna”
fi

#16. Które stwierdzenie warunkowe może być używane jako alternatywa dla instrukcji IF-ELseif-Else w BASH?

'sprawa' Oświadczenie może być używane jako alternatywne TP If-Elseif-IF oświadczenie. Składnia dla 'sprawa' Oświadczenie w skryptach Bash różni się od Sprawa przełącznik Oświadczenie innych języków programowania. 'sprawa' blok jest zamknięty przez „esac” Oświadczenie w Bash. NIE 'przerwa„Instrukcja jest używana w środku”sprawa„blok do zakończenia z bloku.

Składnia:

sprawa w
Wzór dopasowania 1) polecenia ;;
Wzór dopasowania 2) polecenia ;;

Wzorzec dopasowania n) polecenia ;;
esac

Przykład:

#!/bin/bash
#Initializuj zmienną bilet $
bilet = 101
# Porównaj wartość biletu $ z 23, 101 i 503
sprawa $ bilet w
23)
# Wydrukuj wiadomość, jeśli wartość to 23
echo „masz pierwszą nagrodę” ;;
101)
# Wydrukuj wiadomość, jeśli wartość to 101
echo „masz drugą nagrodę” ;;
503)
# Wydrukuj komunikat, jeśli wartość to 503
echo „masz trzecią nagrodę” ;;
*)
# Wydrukuj wiadomość, jeśli wartość nie pasuje do 23, 101 i 503
Echo „Przepraszam, spróbuj następnego razu”
wyjście 0 ;;
esac

#17. Jakie różne rodzaje pętli można użyć w Bash?

Trzy typy pętli są obsługiwane przez skrypt bash. To są podczas gdy I dopóki Pętle. Pętle w Bash sprawdź warunek na początku pętli. Chwila pętla działa, aż warunek pozostanie prawdziwy i dopóki pętla działa, aż warunek pozostanie fałszywy. Istnieją dwa sposoby użycia Do pętla. Jeden jest ogólny Do pętla zawierająca trzy części, a inna dla w pętla. Zastosowania tych trzech pętli pokazano w poniższym przykładzie.

Przykład:

#!/bin/bash
# Zainicjuj $ n
n = 5
# Oblicz kwadrat 5-1 za pomocą pętli
podczas gdy [$ n -gt 0]
Do
sqr = $ ((n*n))
echo „kwadrat $ n to $ sqr”
((N--))
zrobione
# Oblicz kwadrat 5-1 za pomocą pętli
dla ((i = 5; i> 0; i--))
Do
sqr = $ ((i*i))
echo „kwadrat $ i to $ sqr”
zrobione
# Zainicjuj $ x
x = 5
# Oblicz kwadrat 5-1 za pomocą do pętli
do [$ x -le 0]
Do
sqr = $ ((x*x))
echo „kwadrat $ x to $ sqr”
((X--))
zrobione

#18. Jak można zadeklarować i wezwać podprogram?

W Bash funkcja lub procedura nazywa się podprogram. Deklaracja i wezwanie podprogramu w Bash różni się od innych języków. Żaden argument nie można zadeklarować w podprogramach, w przeciwieństwie do innych standardowych języków programowania. Ale zmienne lokalne można zdefiniować w podprogramie za pomocą 'lokalny' Słowo kluczowe.

Przykład:

#!/bin/bash
# Zainicjuj zmienną $ x i $ y, które są globalne
x = 10
y = 35
# Deklaruj funkcję
myFunc ()
# Deklaruj zmienną lokalną $ x
Lokalny x = 15
# Ponownie przypisuj zmienną globalną $ y
y = 25
# Oblicz sumę $ x i $ y
Z = $ ((x+y))
# Wydrukuj sumę zmiennej lokalnej, x $ i zmiennej globalnej, $ y
Echo „Suma $ x i $ y równa $ z”

# Wywołaj funkcję
myfunc
# Wydrukuj sumę zmiennych globalnych, $ x i $ y
Echo „Suma $ x i $ y równa $ z”

#19. Jak wyciąć i wydrukować część danych stringowych w Bash?

Bash nie ma wbudowanej funkcji, jak inne języki do wycięcia części danych stringowych. Ale za pomocą rozszerzenia parametru Dowlą wartość ciągu można wyciąć w Bash. Trzy części można zdefiniować w rozszerzeniu parametrów, oddzielając jelita grubego, aby wyciąć dowolną część danych ciągów. Tutaj pierwsze dwie części są obowiązkowe, a ostatnia część jest opcjonalna. Pierwsza część zawiera główną zmienną strunową, która zostanie użyta do cięcia, druga część to pozycja początkowa, z której zostanie wycięty sznur, a trzecia część to długość sznurka cięcia. Pozycja początkowa musi być policzona od 0, a długość musi być policzona z 1 sznurka głównego, aby odzyskać wartość cięcia.

Przykład:

#!/bin/bash
# Zainicjuj wartość ciągu do $ String
string = "języku skryptów Python"
# Wytnij wartość ciągów od pozycji 7 na koniec łańcucha
Echo $ String: 7
# Wytnij wartość ciągu 9 znaków z pozycji 7
Echo $ String: 7: 9
# Wytnij wartość ciągów od 17 do 20
Echo $ String: 17: -4

#20. Wspomnij o niektórych sposobach wykonywania operacji arytmetycznych w Bash?

Operacje arytmetyczne można wykonywać na wiele sposobów w Bash. „Let”, „Expr”, „BC” I podwójne wsporniki są najczęstszymi sposobami wykonywania operacji arytmetycznych w Bash. Zastosowania tych poleceń pokazano w poniższym przykładzie.

Przykład:

#!/bin/bash
# Obliczanie odejmowania za pomocą ekspansji Expr i parametru
var1 = $ (expr 120 - 100)
# Wydrukuj wynik
echo $ var1
# Oblicz dodatek za pomocą polecenia Let
Niech var2 = 200+300
# Wydrukuj RSULT
echo $ var2
# Oblicz i wydrukuj wartość podziału za pomocą „BC”, aby uzyskać wynik
# z wartością ułamkową
Echo „Skala = 2; 44/7” | pne
# Oblicz wartość mnożenia za pomocą podwójnych nawiasów
var3 = $ ((5*3))
# Wydrukuj wynik
echo $ var3

#21. Jak sprawdzić katalog istnieje lub nie używa BASH?

Bash ma wiele poleceń testowych, aby sprawdzić, czy plik lub katalog istnieje, czy nie, a rodzaj pliku. '-D' Opcja jest używana ze ścieżką katalogu jako instrukcję warunkową, aby sprawdzić, czy katalog istnieje, czy nie w BASH. Jeśli katalog istnieje, zwróci to prawda, w przeciwnym razie zwróci false.

Przykład:

#!/bin/bash
# Przypisz katalog ze ścieżką w zmiennej, $ ścieżka
ścieżka = "/home/ubuntu/temp"
# Sprawdź katalog istnieje lub nie
jeśli [-d „$ ścieżka”]; Następnie
# Wydrukuj wiadomość, jeśli istnieje katalog
Echo „Directory istnieje”
w przeciwnym razie
# Wydrukuj wiadomość, jeśli katalog nie istnieje
Echo „Directory nie istnieje”
fi

#22. Jak można rozwiązać skrypt bash bez wykonywania wszystkich stwierdzeń?

Za pomocą 'Wyjście' Polecenie, skrypt bash może zostać zakończony bez wykonywania wszystkich stwierdzeń. Poniższy skrypt sprawdzi, czy dany plik istnieje, czy nie. Jeśli plik istnieje, wówczas wydrukuje całkowite znaki pliku, a jeśli plik nie istnieje, zakończy skrypt, pokazując wiadomość.

Przykład:

#!/bin/bash
# Zainicjuj nazwę pliku do zmiennej, $ nazwa pliku
filename = "kurs.tekst"
# Sprawdź plik istnieje lub nie za pomocą opcji -f
if [-f „$ filename”]; Następnie
# Wydrukuj wiadomość, jeśli plik istnieje
echo „$ filename istnieje”
w przeciwnym razie
# Wydrukuj wiadomość, jeśli plik nie istnieje
echo „$ filename nie istnieje”
# Zakończ skrypt
Wyjście 1
fi
# Policz długość pliku, jeśli plik istnieje
długość = 'wc -c $ nazwa pliku' '
# Wydrukuj długość pliku
Echo „Całkowite postacie - $ długość”

#23. Jakie są zastosowania Break and Contine Intratments in Bash?

przerwa Instrukcja służy do zakończenia z pętli bez wypełniania pełnej iteracji na podstawie warunku i Kontynuować Instrukcja jest używana w pętli, aby pominąć niektóre stwierdzenia na podstawie warunku. Zastosowania przerwa I Kontynuować Oświadczenia są wyjaśnione w poniższym przykładzie.

Przykład:

#!/bin/bash
# Zainicjuj zmienną $ i do 0, aby uruchomić pętlę
i = 0
# pętla iteruje FOT 10 razy
podczas gdy [$ i -le 10]
Do
# Zwiększ wartość $ i na 1
((i ++))
# Jeśli wartość $ i równa 8, to zakończ pętlę za pomocą instrukcji „Break”
jeśli [$ i -eq 8]; Następnie
przerwa;
fi
# Jeśli wartość $ i jest większa niż 6, pomiń ostatnie stwierdzenie pętli
# za pomocą instrukcji Kontynuuj
jeśli [$ i -ge 6]; Następnie
Kontynuować;
fi
echo „bieżąca wartość i = $ i”
zrobione
# Wydrukuj wartość $ i po zakończeniu z pętli
echo "Teraz wartość i = $ i"

#24. Jak uczynić plik Bash wykonywalny?

Pliki Bash można wykonać za pomocą za pomocą „Chmod” Komenda. Zezwolenie wykonywalne można ustawić za pomocą za pomocą „+x” W chmod Polecenie z nazwą pliku skryptu. Pliki BASH można wykonać bez jawnego 'grzmotnąć' polecenie po ustawieniu bitu wykonania dla tego pliku.

Przykład:

# Ustaw bit wykonania
$ chmod +x nazwa pliku.cii
# Uruchom plik wykonywalny
$ ./Nazwa pliku.cii

#25. Wspomnij o niektórych opcjach używanych do testowania plików

Wiele opcji jest dostępnych w BASH do pliku testowego. Niektóre opcje są wymienione poniżej.

Opcja Opis
-F Służy do testowania pliku i jest to zwykły plik.
-mi Służy do testowania pliku, istnieje tylko.
-R Służy do testowania pliku i ma zgodę odczytu.
-w Służy do testowania pliku i musi napisać zgodę.
-X Służy do testowania pliku i ma zgodę wykonania.
-D Służy do testowania katalogu istnieje.
-L Służy do testowania pliku i jest to symboliczny link.
-S Służy do testowania pliku i jest gniazdo.
-B Służy do testowania pliku to urządzenie blokowe.
-S Służy do sprawdzania pliku nie jest zero rozmiarów.
-nt Służy do sprawdzania zawartości pierwszego pliku jest nowszy niż drugi plik. Na przykład File1 -nt File2 wskazuje, że File1 jest nowszy niż File2.
-OT Służy do sprawdzania treści pierwszego pliku jest starsza niż drugi plik. Na przykład File1 -ot File2 wskazuje, że File1 jest starszy niż File2.
-ef Służy do sprawdzenia, czy dwa twarde linki odnoszą się do tego samego pliku. Na przykład flink1 -ef flink2 wskazuje, że flink1 i flink2 są twardymi linkami i oba odnoszą się do tego samego pliku.

#26. Co oznacza „BC” i jak można użyć tego polecenia w Bash?

Pełna forma „BC” jest Kalkulator bash Aby dokładniej wykonywać operacje arytmetyczne. Część ułamkowa jest pomijana, jeśli jakakolwiek operacja arytmetyczna jest wykonywana w BASH „expr” Komenda. Część ułamkową można również zaokrąglić również za pomocą skala wartość z 'pne' Komenda.

Przykład:

#!/bin/bash
# Oblicz podział bez wartości ułamkowej
Echo „39/7” | pne
# Oblicz podział z pełną wartością ułamkową
Echo „39/7” | BC -L
# Oblicz podział z trzema cyframi po punkcie dziesiętnym
Echo „Skala = 3; 39/7” | pne

#27. Jak wydrukować określoną linię pliku w Bash?

Istnieje wiele sposobów wydrukowania określonej linii w Bash. Jak „awk”, „sed” I 'ogon' Polecenia można użyć do wydrukowania określonego wiersza pliku w Bash jest pokazany w poniższym przykładzie.

Przykład:

#!/bin/bash
# Przeczytaj i przechowuj pierwszy wiersz z pliku za pomocą polecenia „AWK” ze zmienną NR
line1 = 'awk' if (nr == 1) Drukuj 0 $ '.tekst'
# Wydrukuj linię
echo $ line1
# Przeczytaj drugi wiersz z pliku za pomocą polecenia „SED” z opcją -n
line2 = 'sed -n 2p kurs.tekst'
# Wydrukuj linię
Echo $ line2
# Przeczytaj ostatni wiersz z pliku za pomocą polecenia „Tail” z opcją -n
line3 = 'ogon -n 1 kurs.tekst'
# Wydrukuj plik
Echo $ line3

#28. Co to jest ifs?

Ifs jest specjalną zmienną powłoki. Pełna forma Ifs jest wewnętrznym separatorem pola,
Działa jako ogranicznik, aby oddzielić słowo od wiersza tekstu. Służy głównie do podziału łańcucha, czytania polecenia, zastępowania tekstu itp.

Przykład:

#!/bin/bash
# Deklaruj „:” jako ogranicznik do podziału tekstu
Ifs = ":"
# Przypisz dane tekstowe z „:” do $ tekst
text = "czerwony: zielony: niebieski"
# W przypadku pętli przeczyta każde słowo po podzieleniu tekstu na podstawie IFS
dla val in $ tekst; Do
# Wydrukuj słowo
Echo $ val
zrobione

#29. Jak dowiedzieć się długości danych ciągów?

„Expr”, „WC” I „awk” Polecenia można użyć do znalezienia długości danych ciągów w Bash. „expr” I „awk” Polecenia używają długość opcja, 'toaleta' użycie polecenia '-C' opcja do zliczenia długości łańcucha.

Przykład:

Zastosowania powyższych poleceń pokazano w następującym skrypcie.

#!/bin/bash
# Długość liczby za pomocą opcji długości „Expr”
echo „Expr Długość„ Lubię php ”
# Długość liczby za pomocą polecenia „WC”
Echo „Lubię bash” | WC -C
# Długość liczby za pomocą polecenia „AWK”
Echo „Lubię Python” | awk 'Drukuj długość'

#30. Jak uruchomić równolegle skryptu Bash?

Wiele scenariuszy Bash można wykonać równolegle za pomocą za pomocą Nohup Komenda. Jak wiele plików bash można wykonywać równolegle z folderem, jest pokazane w poniższym przykładzie.

Przykład:

# Przypisz nazwę folderu ze ścieżką w zmiennej $ dir, która zawiera
# wiele plików bash
dir = "home/ubuntu/temp"
# W przypadku pętli odczytuje każdy plik z katalogu i wykonuje równolegle
dla skryptu w Dir/*.cii
Do
nohup bash „$ skrypt” i
zrobione

Wniosek:

W tym artykule opisano większość podstawowych pytań dotyczących wywiadu w skrypcie Bash dla czytelników, którzy chcą rozpocząć karierę jako programista Bash.