Ennek az útmutatónak a célja a fájl létezése a rendszerben a bash parancsfájlok segítségével:
A fájl létezésének ellenőrzése a bash parancsfájlok használatával:
1) A fájlnév beírásával a terminálba:
Először létre kell hoznunk egy bash szkript fájlt, használjuk az alább említett parancsot:
$ touch tesztfájl.SHAz általam létrehozott fájl neve: „testfile.sh ”, a„.Az sh ”kiterjesztés a shell parancsfájlt jelöli:
Nyissa meg a „tesztfájlt.sh ”bármely szövegszerkesztőben. Ezután írd meg a szkriptet, mentsd el a „save” megnyomásával.
Az egyik módszer egy fájl megkeresése, ha fájlnevet kér a felhasználótól a terminálon.
Használja a „-f”A fájl létezésének ellenőrzésére.
Írja be az alábbi szkriptet:
#!/ bin / bashecho "Írja be a fájlnevét"
újfájl1 olvasása
ha [-f "$ newfile1"]
azután
echo "A fájl megtalálva"
más
echo "A fájl nem található"
fi
Menjen vissza a terminálhoz, és futtassa a fájlt a kimenet nyomtatásához:
./fájl név.SHAz engedély megtagadása üzenet jelenik meg a terminálon.
Tegye futtathatóvá az alább említett parancs végrehajtásával:
$ chmod + x tesztfájl.SH
Írja be a fájl nevét, és kinyomtatja a kimenetet:
2) Írja be a fájl nevét a szkript írása közben:
A fájl megkeresésének másik módja a fájl nevének megadása a szkript írása közben. Háromféleképpen ellenőrizhetjük a fájl elérhetőségét. Az első a „test” parancsot használja, a második az „if” -et szögletes zárójelben, a harmadik pedig az „if”, de kettős szögletes zárójelben az alábbiak szerint:
- „Teszt KIFEJEZÉS.”
- „Ha [KIFEJEZÉS]”
- „Ha [[KIFEJEZÉS]]
Értsük meg példákkal:
1) teszt [kifejezés]
Másolja a megadott szkriptet és illessze be a szerkesztőbe, mentse el:
fájlnév = fájl1
ha teszt -f "$ fájlnév";
azután
echo "$ fájl megtalálva."
más
echo "$ fájl nem található"
fi
Kimenet:
Mivel a könyvtáramban nincs ilyen fájl, ezért a kód megjeleníti a „Fájl nem található” üzenetet.
2) ha [kifejezés]
Másolja a következő parancsfájlt annak ellenőrzéséhez, hogy létezik-e fájl vagy sem:
#!/ bin / bashfájlnév = sajátfájl.txt
ha [-f "$ fájlnév"];
azután
echo "$ fájlnév megtalálva."
más
echo "a fájlnév nem található"
fi
Kimenet:
3) ha [[kifejezés]]
Másolja az alábbiakban írt szkriptet, és illessze be a terminálra:
#!/ bin / bashfájlnév = tesztfájl
ha [[-f "$ fájlnév"]];
azután
echo "$ fájlnév megtalálva."
más
echo "$ fájlnév nem található"
fi
Kimenet:
A könyvtár ellenőrzése:
3) A könyvtár nevének beírásával szkript írásakor
Használja a "-d”Jelző a könyvtár létezésének ellenőrzésére.
Az alább említett szkriptben a „dir11” az a változó, amelyben a megtalált fájlt tárolja; ebben a példában szeretném ellenőrizni, hogy létezik-e a „testDir” könyvtárnév.
#!/ bin / bashdir11 = testDir
ha [-d "$ dir11"]
azután
echo "A könyvtár megtalálta"
más
echo "A könyvtár nem található"
fi
Kimenet:
2) A fájlnév megadásával a terminálon:
Amikor a terminálon futtatja a parancsot annak ellenőrzésére, hogy létezik-e a könyvtár, vagy sem, meg kell adnia a keresett könyvtár nevét:
echo "írja be a könyvtár nevét."
olvassa el a Dir1-et
ha [-d "Dir1"]
azután
echo "könyvtár megtalálva"
más
echo "a könyvtár nem található"
fi
Kimenet:
A fájl ellenőrzése az „if” utasítás használata nélkül:
A „teszt” parancs az „if” utasítás nélkül is végrehajtható. Csak akkor jeleníti meg a kimenetet, ha a fájl létezik; máskülönben nem lenne kimenet:
Írjon szkriptet:
- teszt -f sajátfájl.txt && echo "fájl megtalálva"
- [-f myfile.txt] && echo "$ fájl található."
- [[-f myfile.txt]] && echo "$ fájl található."
Kimenet:
A könyvtár ellenőrzése az „if” utasítás használata nélkül:
Az alábbi utasításokkal ellenőrizheti, hogy létezik-e könyvtár vagy sem:
- [[-d testDir]] && echo "könyvtár létezik"
- 2) [-d testDir] && echo "könyvtár létezik"
Kimenet:
Több fájl / könyvtár ellenőrzése:
1) Több fájl ellenőrzése „if” utasításokkal:
Az „-a” jelzővel ellenőrizheti a különféle fájlok létezését a beágyazott „if / else” utasítások helyett:
ha [-f új_fájl.txt -a -f újfájl.txt]; azután
echo "Mindkét fájl létezik."
fi
Egy másik mód:
#!/ bin / bashha [[-f új_fájl.txt && -f newfile.txt]]; azután
echo "Mindkét fájl létezik."
fi
Kimenet:
2) Több fájl ellenőrzése az „if” utasítás használata nélkül:
Használja a következő utasítást, hogy egyszerre több fájlt ellenőrizzen, 1 az „if” használata nélkül:
- [[-f új_fájl.txt && -f newfile.txt]] && echo “Mindkét fájl kilép.”
- [[-f új_fájl.txt && -f newfile.txt]] && echo “Mindkét fájl kilép.”
Kimenet:
Következtetés:
Ez a cikk bemutatja, hogyan lehet a bash parancsfájlokat használni egy fájl vagy könyvtár ellenőrzésére. Különböző lehetőségeket használtunk a fájl elérhetőségének ellenőrzésére. Először a „teszt” parancsot használjuk különböző zászlókkal. Aztán megtanultuk az „if”, beágyazott „if-else” és az „if” utasítások nélküli használatát a fájl vagy könyvtár ellenőrzésére. Megvizsgáltuk azt is, hogyan lehet több fájlt vagy könyvtárat ellenőrizni.