BASH programozás

74 Bash operátorok

74 Bash operátorok
Különböző típusú operátorok léteznek a Bash-ban, hogy különféle műveleteket hajtsanak végre a bash szkript segítségével. A bash operátorok néhány általános csoportja számtani operátor, összehasonlító operátor, bitenként operátor, logikai operátor, string operátor és fájl operátor. A leggyakrabban használt 74 bash operátort ebben a cikkben példákkal ismertetjük.

Operátorlista:

  1. + Egész operátor
  2. += Egész operátor
  3. - Egész operátor
  4. -= Egész operátor
  5. * Egész operátor
  6. * = Egész operátor
  7. ** Egész operátor
  8. Egész operátor
  9. / = Egész operátor
  10. % Egész operátor
  11. % = Egész operátor
  12. ++ (Pre) Inkrement Operátor
  13. (Post) ++ növekmény operátor
  14. - (Pre) Decrement Operator
  15. (Post) - Csökkentési operátor
  16. && logikai operátor
  17. || Logikai operátor
  18. ! Logikai operátor
  19. ?: Ternary Operator
  20. , vessző Operátor
  21. & Bitenkénti operátor
  22. & = Bitenkénti kezelő
  23. | Bitenkénti kezelő
  24. | = Bitenkénti kezelő
  25. ^ Bitenkénti kezelő
  26. ^ = Bitenkénti kezelő
  27. ~ Bitenkénti kezelő
  28. << Bitwise Operator
  29. <<= Bitwise Operator
  30. >> Bitenkénti kezelő
  31. >> = Bitenkénti kezelő
  32. <<< her-string Operator
  33. -eq Egész operátor
  34. -ne Integer operátor
  35. -gt Integer operátor
  36. -ge Integer operátor
  37. -Integer operátor
  38. -le Egész operátor
  39. < Integer operator
  40. <= Integer operator
  1. > Egész operátor
  2. > = Egész operátor
  3. = karakterlánc operátor
  4. == karakterlánc operátor
  5. != karakterlánc operátor
  6. < string operator
  7. > Vonós operátor
  8. -z karakterlánc operátor
  9. -n karakterlánc operátor
  10. -logikus operátor
  11. -o logikus operátor
  12. -e fájlkezelő
  13. -f fájl operátor
  14. -s fájlkezelő
  15. -d fájlkezelő
  16. -b fájlkezelő
  17. -c fájl operátor
  18. -p fájl operátor
  19. -h fájlkezelő
  20. -L fájlkezelő
  21. -S fájlkezelő
  22. -t fájlkezelő
  23. -r fájlkezelő
  24. -w fájlkezelő
  25. -x fájl operátor
  26. -g fájlkezelő
  27. -u fájlkezelő
  28. -k fájlkezelő
  29. -O fájl operátor
  30. -G fájl operátor
  31. -N fájl operátor
  32. -nt fájl operátor
  33. -fájlkezelő
  34. -ef fájl operátor

'+' Egész operátor

A '+' számtani operátor a bash számértékeinek összeadására. A következő példa két egész szám hozzáadását mutatja be az 'expr' paranccsal. Itt helyet kell adnia a '+' operátor előtt és után, különben az összeadja az értékeket az összeadás helyett.

$ echo 'expr 5 + 25'

Felül

+= Egész operátor

A '+ =' rövidített számtani operátor, amely egész értéket ad hozzá egy változó értékéhez, és az eredményt abban a változóban tárolja. A következő példában a $ n értéke hozzáadódik 30-hoz, és az eredményt $ n-ben tárolja.

$ n = 20
$ echo $ ((n + = 30))

Felül

- Egész operátor

A '-' számtani operátor, amelyet két szám értékének kivonására használnak. A következő példa ennek az operátornak a használatát mutatja, amely 15-öt von le 35-ből.

$ echo 'expr 35 - 15'

Felül

-= Egész operátor

'- =' egy rövidített számtani operátor, amely kivon egy numerikus értéket egy változóból, és az eredményt abban a változóban tárolja. A következő példa 100 $ -t von le az $ n változóból, és az eredményt $ n-ben tárolja.

$ n = 120
$ echo $ ((n - = 100))

Felül

* Egész operátor

A '*' operátor a számértékek szorzására szolgál. A következő parancs ennek az operátornak a használatát mutatja be, amely 5-öt 7-gyel szoroz és 25-öt nyomtat kimenetként.

$ echo $ ((5 * 7))

Felül

* = Egész operátor

'* =' egy rövidített aritmetikai operátor, amely megszorozza a numerikus értéket egy változó értékével, és eltárolja a változó eredményét. A következő parancs 50-et szoroz a $ n változóval, és az eredményt $ n-ben tárolja.

$ n = 10
$ echo $ ((n * 50))

Felül

** Egész operátor

'**' operátort használunk az x kiszámításáhozy. '**' az 5 értékének kinyomtatására szolgál3 a következő parancsban.

$ echo $ ((5 ** 3))

Felül

Egész operátor

A '/' számtani operátor két numerikus érték osztására bash-ban. A következő parancsok két egész szám felosztását mutatják a „let” paranccsal.

$ let n = 30/6
$ echo $ n

Felül

/ = Egész operátor

'/ =' egy rövidített számtani operátor, amely egy változót eloszt egy számmal, és az eredményt ebbe a változóba tárolja. A következő parancsok elosztják a $ n-t 10-vel, és az eredményt $ n-ben tárolják.

$ n = 50
$ let n = n / 10
$ echo $ n

Felül

% Egész operátor

A „%” operátor a két szám felosztásának fennmaradó részének kiszámítására szolgál. A fennmaradó 89/5 érték a következő parancs végrehajtása után kerül kinyomtatásra.

$ echo 'expr 89% 5'

Felül

% = Egész operátor

'% =' egy rövidített aritmetikai operátor, amely kiszámítja a maradékot, miután elosztotta a változó értékeit egy számmal, és a maradék értékét eltárolja abban a változóban. A következő parancsok bemutatják ennek az operátornak a használatát.

$ n = 150
$ echo 'expr $ n% 7'

Felül

++ (Pre) Inkrement Operátor

A „++” operátor segítségével egy változó értékét 1-gyel növelheti. Ha az operátort a változó előtt használjuk, akkor ez előre növekmény operátorként fog működni, ami azt jelenti, hogy a változó értéke először növekszik, és később más műveleteket hajt végre. Az $ i értéke növekszik, mielőtt a következő példában hozzáadná a 10-es számhoz.

$ i = 39
$ Echo $ ((++ i + 10))

Felül

(Post) ++ növekmény operátor

Ha a '++' operátort használjuk a változó után, akkor ez a növekedés utáni operátorként fog működni, és egy másik feladat elvégzése után 1-gyel növeli a változó értékét. Ebben a példában az $ i aktuális értéke kerül először kinyomtatásra, és 1-gyel növekszik a második 10-es parancsban. Az utolsó parancs kinyomtatja a $ i értékét, amely 11.

$ i = 10
$ echo $ ((i ++))
$ visszhang $ i

Felül

- - (Pre) Decrement Operator

A '-' operátor segítségével egy változó értékét 1-gyel csökkenthetjük. Ha az operátort a változó előtt használjuk, akkor előtörési operátorként fog működni, ami azt jelenti, hogy a változó értéke először csökken, a másik művelet pedig később történik meg. Az $ i értékét csökkenteni kell, mielőtt a következő példában hozzáadnánk a 15-ös számhoz.

$ i = 36
$ echo $ ((- - i + 15))

Felül

(Post) - - Csökkentési operátor

Ha a '-' operátort használjuk a változó után, akkor ez utólagos csökkentési operátorként fog működni, és egy másik feladat elvégzése után 1-gyel csökkenti a változó értékét. Ebben a példában az $ i aktuális értékét először kinyomtatjuk, és 1-gyel csökkentjük a második 6-os parancsban. Az utolsó parancs kiírja az $ i értékét csökkentés után, ami 5.

$ i = 6
$ echo $ ((i--))
$ visszhang $ i

Felül

&& logikai operátor

Az '&&' egy összehasonlító operátor, amelyet logikai ÉS logika létrehozására használnak. Ha minden feltétel igaz, akkor az ÉS logika igaz. Két feltételt ellenőrizünk a következő példában az && operátor használatával.

ha [[$ 1 = "fahmida" && $ 2 = "abcd"]]
azután
echo "Érvényes felhasználó"
más
echo "Érvénytelen felhasználó"
fi

A szkriptet kétszer hajtjuk végre érvényes adatokkal és érvénytelen adatokkal a következő kimenetben.

Felül

|| Logikai operátor

„||” operátor két vagy több feltétel létrehozására szolgál VAGY logikával, amely true-val tér vissza, ha a feltételek bármelyike ​​igaz-ra tér vissza. A következő szkript bemutatja ennek az operátornak a használatát.

ha [[$ 1 = 101 || 1 USD = 780]]
azután
visszhang "Ön nyerte a jegyet"
más
visszhang "Próbálja újra"
fi

A szkriptet kétszer hajtják végre 101-gyel és 102-vel a következő kimenetben.

Felül

! Logikai operátor

"!'operátor segítségével logikai NEM feltétel hozható létre, amely igazra vált hamisra vagy hamis igazra. A következő szkript bemutatja ennek az operátornak a használatát. A szkript kinyomtatja a „Program fut” parancsot, ha az első parancssori argumentum üres, és a „Program leállt” feliratot nyomtatja, ha az első parancssori argumentum bármilyen értéket tartalmaz.

felmond = $ 1
ha [[ !$ terminate]]
azután
echo "A program fut"
más
visszhang "A program befejeződött"
fi

A parancsfájl argumentum nélkül és az alábbi példában szereplő argumentummal kerül végrehajtásra.

Felül

?: Ternary Operator

"?: 'operátor az if utasítás alternatívájaként használható. A logikai feltételt a "?'És ha a feltétel igazra tér vissza, akkor végrehajtja a': 'előtt definiált utasítást, különben a': 'után definiált utasítást hajtja végre. A következő szkript bemutatja ennek az operátornak a használatát.

n = 20
v1 = 100
v2 = 200
echo $ ((n> = 20 ? v1: v2))

Felül

, vessző Operátor

A ',' operátor egy sorban több utasítás végrehajtására szolgál. A következő parancs bemutatja ennek az operátornak a használatát. $ N értéke 10-hez van rendelve, 30-at hozzáadunk $ n-hez, és kinyomtatjuk $ n értékét.

$ echo "$ ((n = 10, n = n + 30))"

Felül

& Bitenkénti kezelő

Az '&' operátor bitenkénti ÉS művelet végrehajtására szolgál, amely bináris adatokon működik.  A következő parancs bemutatja ennek az operátornak a használatát.

$ echo $ ((3 és 6))

Felül

& = Bitenkénti kezelő

A '& =' operátor segítségével bitenként és AND műveleteket hajthat végre egy változó értékével, és az eredményt eltárolja a változóban. Az operátor használatának bemutatásához futtassa a következő parancsokat.

$ var = 3
$ ((var & = 7))
$ echo $ var

Felül

| Bit-bölcs operátor

'|' operátor segítségével binárisan OR művelet végezhető, amely bináris adatokon működik.  A következő parancs bemutatja ennek az operátornak a használatát.

$ echo $ ((3 | 6))

Felül

| = Bitenkénti kezelő

A '| =' operátor bitenként VAGY műveletet hajt végre egy változó értékével, és az eredményt eltárolja a változóban. Az operátor használatának bemutatásához futtassa a következő parancsokat.

$ var = 4
$ ((var | = 2))
$ echo $ var

Felül

^ Bitenkénti kezelő

A '^' operátor segítségével bitenként XOR műveletet lehet végrehajtani, amely bináris adatokon működik.  A következő parancs bemutatja ennek az operátornak a használatát.

$ echo $ ((3 ^ 6))

Felül

^ = Bitenkénti kezelő

A '^ =' operátor segítségével bitenként XOR műveletet hajthat végre egy változó értékével, és az eredményt eltárolja a változóban. Az operátor használatának bemutatásához futtassa a következő parancsokat.

$ var = 5
$ ((var ^ = 2))
$ echo $ var

Felül

~ Bitenkénti kezelő

A '~' operátor az érték kiegészítésére szolgál. A következő parancs bemutatja ennek az operátornak a használatát. A 7 komplementje -8.

$ echo $ ((~ 7))

Felül

<< Bitwise Operator

"<<' operator is used to left-shift the binary value. The following command shows the use of this operator.

$ echo $ ((6<<1 ))

Felül

<<= Bitwise Operator

"<<=' operator is used to left shift the binary value of any variable and store the value in that variable. The following command shows the use of this operator.

$ var = 5
$ ((var <<= 1))
$ echo $ var

Felül

>> Bitenkénti kezelő

A '>>' operátor a bináris érték jobbra tolására szolgál. A következő parancs bemutatja ennek az operátornak a használatát.

$ echo $ ((8 >> 1))

Felül

>> = Bitenkénti kezelő

A '>> =' operátor segítségével bármely változó bináris értékét jobbra tolhatja, és az értéket abban a változóban tárolja. A következő parancs bemutatja ennek az operátornak a használatát.

$ var = 7
$ ((var >> = 1))
$ echo $ var

Felül

<<< here-string Operator

"<<<' operator is used to passing the data from the right side to standard input. The following command shows the use of this operator.

$ cat <<< "Linux Hint"

Felül

-eq Egész szám operátor

Az '-eq' operátor segítségével ellenőrizhetjük, hogy két érték egyenlő-e vagy sem. Ha az értékek megegyeznek, akkor igaz értéket ad vissza, különben hamis értéket ad vissza.

n = 50
ha [$ n -eq 80]
azután
echo "A szám egyenlő 80-tal"
más
echo "A szám nem egyenlő 80-tal"
fi

Felül

-ne Integer operátor

A '-ne' operátor segítségével ellenőrizzük, hogy két szám nem egyenlő vagy egyenlő-e. Ha az értékek nem egyenlőek, akkor igaz értéket ad vissza, különben hamis értéket ad vissza.

n = 50
ha [$ n -ne 100]
azután
echo "A szám nem egyenlő 100-val"
más
echo "A szám egyenlő 100-tal"
fi

Felül

-gt Integer operátor

A '-gt' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám nagyobb, mint a másik szám. A következő szkript bemutatja ennek az operátornak a használatát.

n = 50
ha [$ n -gt 50]
azután
visszhang "A szám nagyobb, mint 50"
más
echo "A szám kisebb vagy egyenlő 50-vel"
fi

Felül

-ge Egész operátor

A '-ge' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám nagyobb vagy egyenlő a másik számmal. A következő szkript bemutatja ennek az operátornak a használatát.

n = 50
ha [$ n -ge 50]
azután
echo "A szám nagyobb vagy egyenlő 50-vel"
más
visszhang "A szám kevesebb, mint 50"
fi

Felül

-Integer operátor

A '-lt' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám kisebb, mint a másik szám. A következő szkript bemutatja ennek az operátornak a használatát.

n = 50
ha [$ n -lt 50]
azután
visszhang "A szám kevesebb, mint 50"
más
echo "A szám nagyobb vagy egyenlő 50-vel"
fi

Felül

-le Egész operátor

Az '-le' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám kisebb vagy egyenlő a másik számmal. A következő szkript bemutatja ennek az operátornak a használatát.

n = 50
ha [$ n -le 50]
azután
echo "A szám kisebb vagy egyenlő 50-vel"
más
visszhang "A szám nagyobb, mint 50"
fi

Felül

< Integer operator

"<' operator is used to compare two numbers and it returns true if any number is less than the other number. The following script shows the use of this operator.

n = 50
ha [[$ n < 50 ]]
azután
visszhang "A szám kevesebb, mint 50"
más
echo "A szám nagyobb vagy egyenlő 50-vel"
fi

Felül

<= Integer operator

"<=' operator is used to compare two numbers and it returns true if any number is less than or equal to the other number. The following script shows the use of this operator.

n = 55
ha (($ n <= 50 ))
azután
echo "A szám kisebb vagy egyenlő 50-vel"
más
visszhang "A szám nagyobb, mint 50"
fi

Felül

> Egész operátor

A '>' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám nagyobb, mint a másik szám. A következő szkript bemutatja ennek az operátornak a használatát.

n = 55
ha (($ n> 50))
azután
visszhang "A szám nagyobb, mint 50"
más
echo "A szám kisebb vagy egyenlő 50"
fi

Felül

> = Egész operátor

A '> =' operátor két szám összehasonlítására szolgál, és igaz értéket ad vissza, ha bármelyik szám nagyobb vagy egyenlő a másik számmal. A következő szkript bemutatja ennek az operátornak a használatát.

n = 55
ha (($ n> = 55))
azután
echo "A szám nagyobb vagy egyenlő 55"
más
visszhang "A szám kevesebb, mint 55"
fi

Felül

= Karakterlánc-operátor

A '=' operátor két karakterlánc egyenlőségének összehasonlítására szolgál. A következő szkript bemutatja ennek az operátornak a használatát.

str = "Mangó"
ha [$ str = "Narancs"]
azután
echo "Az érték megegyezik"
más
echo "Az érték nem egyenlő"
fi

Felül

== Egyenlőség operátor

A '==' operátor két érték egyenlőségének összehasonlítására szolgál. A következő szkript bemutatja ennek az operátornak a használatát.

var = 100
ha [$ var == 100]
azután
echo "Az érték 100
más
echo "Az érték nem egyenlő 100-val"
fi

Felül

!= Egyenlőtlenség operátor

"!= 'operátor két érték egyenlőtlenségének összehasonlítására szolgál. A következő szkript bemutatja ennek az operátornak a használatát.

var = 50
ha [$ var != 100]
azután
echo "Az érték nem egyenlő 100-val"
más
echo "Az érték egyenlő 100-tal"
fi

Felül

< string operator

"<' operator is used to compare two string values and it returns true if the first value is less than second value. The following script shows the use of this operator.

str1 = "Mangó"
str2 = "narancs"
ha [[$ str < $str2 ]]
azután
echo "$ str1 alacsonyabb, mint $ str2"
más
echo "$ str1 nagyobb, mint $ str2"
fi

Felül

> karakterlánc operátor

A '>' operátor két karakterlánc értékének összehasonlítására szolgál, és igaz értéket ad vissza, ha az első érték nagyobb, mint a második érték. A következő szkript bemutatja ennek az operátornak a használatát.

str1 = "Mangó"
str2 = "narancs"
ha [[$ str> $ str2]]
azután
echo "$ str1 nagyobb, mint $ str2"
más
echo "$ str2 nagyobb, mint $ str1"
fi

Felül

-z karakterlánc operátor

A '-z' operátor segítségével ellenőrizhető, hogy a karakterlánc hossza nulla-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

str = ""
ha [-z $ str]
azután
echo "A karakterlánc hossza nulla"
más
echo "A karakterlánc hossza több mint nulla"
fi

Felül

-n karakterlánc operátor

Az '-n' operátor segítségével ellenőrizhető, hogy a karakterlánc hossza nem nulla-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

str = "Linux"
ha [-n $ str]
azután
echo "A karakterlánc hossza nem nulla"
más
echo "A karakterlánc hossza nulla"
fi

Felül

-logikus operátor

Az '-a' operátor logikai ÉS logika létrehozására szolgál két vagy több feltétel között. A következő szkript bemutatja ennek az operátornak a használatát.

n1 = 25
n2 = 65
ha [$ n1 -gt 24 -a $ n2 -lt 66]
azután
visszhang "Ön jogosult"
más
echo "Ön nem jogosult"
fi

Felül

-o logikus operátor

Az '-o' operátor logikai VAGY logika létrehozására szolgál két vagy több feltétel között. A következő szkript bemutatja ennek az operátornak a használatát.

pontszám1 = 55
pontszám2 = 75
ha [$ score1 -eq 55 -o $ score2 -eq 80]
azután
visszhang "átmentél"
más
visszhang "megbuktál"
fi

Felül

-e fájlkezelő

-A teszt operátor segítségével ellenőrizhető, hogy létezik-e fájl vagy mappa. Hozzon létre egy bash fájlt a következő szkript segítségével, hogy ellenőrizze, létezik-e fájl vagy sem. Itt a fájlnév parancssori argumentumként szerepel a szkriptben.

fájlnév = $ 1
ha [-e $ fájlnév]
azután
echo "Fájl vagy mappa létezik."
más
echo "Fájl vagy mappa nem létezik."
fi

A kimenet ellenőrzéséhez futtassa az alábbi parancsokat.

$ ls
$ bash fo.sh temp
$ bash fo.sh teszt.txt
$ bash fo.sh tesztelés.txt

Felül

-f fájl operátor

A '-f' operátor segítségével ellenőrizhető, hogy létezik-e fájl. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-f "teszt.txt "]
azután
echo "A fájl létezik."
más
echo "A fájl nem létezik."
fi
$ ls
$ bash fo.SH

Felül

-s fájlkezelő

A '-s' operátor segítségével ellenőrizhető, hogy a fájl mérete meghaladja-e a nulla értéket. A következő szkript bemutatja ennek az operátornak a használatát.

fájlnév = $ 1
ha [-s $ fájlnév]
azután
echo "A fájl mérete nagyobb, mint nulla."
más
echo "A fájl mérete nulla."
fi

Felül

-d fájlkezelő

A '-d' operátor segítségével ellenőrizheti, hogy létezik-e mappák. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-d ​​$ név]
azután
echo "A mappa létezik."
más
echo "A mappa nem létezik."
fi
 
$ ls
$ bash fo.sh temp
$ bash fo.sh mydir

Felül

-b fájlkezelő

A '-b' operátorral ellenőrizhető, hogy a fájl blokk-speciális fájl-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-b $ név]
azután
echo "Ez egy blokk speciális fájl."
más
echo "Ez nem egy blokk speciális fájl."
fi
$ bash fo.sh / dev / sda1

Felül

-c fájl operátor

A '-c' operátor segítségével ellenőrizhető, hogy a fájl egy karakteres speciális fájl vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-c $ név]
azután
echo "Ez egy karakteres speciális fájl."
más
echo "Ez nem egy karakter speciális fájl."
fi
$ bash fo.sh / dev / stdin

Felül

-p fájl operátor

A '-p' operátor segítségével ellenőrizhető, hogy a fájl cső vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

pipe_test ()

[-p / dev / fd / 0] && echo "A fájl egy cső" || echo "A fájl nem cső"

visszhang "Hello" | pipa teszt

Felül

-h fájlkezelő

A '-h' operátor segítségével ellenőrizhető, hogy a fájl szimbolikus link-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-h $ név]
azután
visszhang "Ez egy szimbolikus kapcsolat."
más
visszhang "Ez nem szimbolikus kapcsolat."
fi

Felül

-L fájlkezelő

Úgy működik, mint a korábban említett -h operátor.

név = $ 1
ha [-L $ név]
azután
visszhang "Ez egy szimbolikus kapcsolat."
más
visszhang "Ez nem szimbolikus kapcsolat."
fi

Felül

-S fájlkezelő

A '-S' operátor segítségével ellenőrizhető, hogy a fájl socket-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-S $ név]
azután
visszhang "Ez egy aljzat."
más
echo "Ez nem egy aljzat."
fi

Felül

-t fájlkezelő

-A t 'operátor segítségével ellenőrizhető, hogy a fájl társítva van-e a terminálhoz. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-t 1]
azután
echo "A fájl egy terminálhoz van társítva."
más
echo "A fájl nincs társítva a terminálhoz."
fi

Felül

-r fájlkezelő

A '-r' operátor segítségével ellenőrizhető egy fájl olvasási engedélye. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-r $ név]
azután
echo "A fájlnak olvasási engedélye van."
más
echo "A fájlnak nincs olvasási engedélye."
fi

Felül

-w fájlkezelő

A '-w' operátor segítségével ellenőrizhető egy fájl írási engedélye. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-w $ név]
azután
echo "A fájlnak írási engedélye van."
más
echo "A fájlnak nincs írási engedélye."
fi

Felül

-x fájl operátor

A '-x' operátor egy fájl végrehajtási engedélyének ellenőrzésére szolgál. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-x $ név]
azután
echo "A fájl végrehajtási engedéllyel rendelkezik."
más
echo "A fájlnak nincs végrehajtási engedélye."
fi

Felül

-g fájlkezelő

A '-g' operátor segítségével ellenőrizheti, hogy a fájl azonosítója (SGID) be van-e állítva. A következő szkript bemutatja ennek az operátornak a használatát.

név = $ 1
ha [-g $ név]
azután
echo "A csoport azonosítója be van állítva."
más
echo "A csoportazonosító nincs beállítva."
fi

Felül

-u fájlkezelő

Az '-u' operátor segítségével ellenőrizhető, hogy a felhasználói azonosító (SUID) be van-e állítva egy fájlhoz. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-u $ 1]
azután
echo "A felhasználói azonosító be van állítva."
más
echo "A felhasználói azonosító nincs beállítva."
fi

Felül

-k fájlkezelő

A '-k' operátor segítségével ellenőrizhető, hogy a ragacsos bit be van-e állítva egy fájlhoz. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-k $ 1]
azután
echo "A ragadós bit be van állítva."
más
echo "A ragadós bit nincs beállítva."
fi

Felül

-O fájl operátor

Az '-O' operátor a fájl tulajdonjogának ellenőrzésére szolgál. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-O $ 1]
azután
echo "A fájl tulajdonosa."
más
echo "Nem a fájl tulajdonosa."
fi

Felül

-G fájl operátor

A '-G' operátor segítségével ellenőrizheti a fájl csoportazonosítóját, és a bejelentkezési felhasználó ugyanaz. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-G $ 1]
azután
echo "A csoport azonosítói megegyeznek."
más
echo "A csoport azonosítója nem ugyanaz."
fi

Felül

-N fájl operátor

A '-N' operátor segítségével ellenőrizhető, hogy a fájlok módosultak-e vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

ha [-N $ 1]
azután
echo "A fájl módosult."
más
echo "A fájl nincs módosítva."
fi

Felül

-nt fájl operátor

A '-nt' operátor segítségével ellenőrizhető, hogy bármely fájl friss-e a másik fájlnál, vagy sem. A következő szkript bemutatja ennek az operátornak a használatát.

ha [$ 1 -nt $ 2]
azután
echo "$ 1 újabb, mint $ 2"
más
echo "$ 2 újabb, mint $ 1"
fi

Felül

-fájlkezelő

Az '-ot' operátor segítségével ellenőrizhető, hogy a fájl régebbi-e, mint a másik fájl. A következő szkript bemutatja ennek az operátornak a használatát.

ha [$ 1 - nem $ 2]
azután
echo "$ 1 régebbi, mint $ 2"
más
echo "$ 2 régebbi, mint $ 1"
fi

Felül

-ef fájl operátor

Az '-ef' operátor segítségével ellenőrizhető, hogy két merevlemez ugyanarra a fájlra mutat-e vagy sem. A következő példa ennek az operátornak a használatát mutatja be.

ha [$ 1 -ef $ 2]
azután
echo "A $ 1 és a $ 2 ugyanazon fájl kemény linkjei."
más
echo "A $ 1 és a $ 2 nem ugyanazon fájl hard linkjei."
fi

Következtetés

A bash operátorok leggyakoribb felhasználását ebben a cikkben nagyon egyszerű példákkal magyarázzuk. Segíteni fogja az új bash programozót abban, hogy a bash operátorokat különféle célokra használja.

OpenTTD vs Simutrans
Saját közlekedési szimuláció létrehozása szórakoztató, pihentető és rendkívül csábító lehet. Ezért meg kell győződnie arról, hogy a lehető legtöbb ját...
OpenTTD bemutató
Az OpenTTD az egyik legnépszerűbb üzleti szimulációs játék. Ebben a játékban létre kell hoznia egy csodálatos szállítási vállalkozást. Azonban kezdete...
SuperTuxKart Linuxhoz
A SuperTuxKart egy nagyszerű cím, amelynek célja, hogy ingyenesen hozza el a Mario Kart élményét Linux rendszerén. Elég kihívást jelentő és szórakozta...