Kā pārbaudīt, vai fails pastāv bash

How Check If File Exists Bash



Ir vairāki veidi, kā pārbaudīt faila pieejamību Linux. Pārbaudes komanda bash skriptos ir viena no galvenajām pieejām faila esamības pārbaudei.
Šīs rokasgrāmatas mērķis ir apspriest faila esamību jūsu sistēmā, izmantojot bash skriptu:

Kā pārbaudīt faila esamību, izmantojot bash skriptu:

1) Terminālī ievadot faila nosaukumu:







Pirmkārt, mums ir jāizveido bash skripta fails, izmantojiet zemāk minēto komandu:



$pieskartiestestfile.sh

Mana izveidotā faila nosaukums ir testfile.sh, paplašinājums .sh norāda čaulas skripta failu:







Atveriet testfile.sh jebkurā teksta redaktorā. Pēc tam uzrakstiet skriptu, saglabājiet to, nospiežot saglabāt.

Viens veids ir atrast failu, terminālī prasot lietotājam faila nosaukumu.



Izmantot -f lai pārbaudītu faila esamību.

Uzrakstiet zemāk esošo skriptu:

#!/bin/bash
izmest ārā 'Ievadiet savu faila nosaukumu'
lasītjauns fails 1
ja [ -f '$ newfile1' ]
tad
izmest ārā 'Fails ir atrasts'
citādi
izmest ārā 'Fails nav atrasts'
būt

Dodieties atpakaļ uz termināli un palaidiet failu, lai izdrukātu:

./faila nosaukums.sh

Terminālī tiks parādīts ziņojums par atļaujas noraidīšanu.

Padariet to izpildāmu, izpildot zemāk minēto komandu:

$chmod+ x testfile.sh

Ievadiet faila nosaukumu, un tas izdrukās izvadi:

2) Ievadot faila nosaukumu, rakstot skriptu:
Vēl viens veids, kā atrast failu, skripta rakstīšanas laikā norādot faila nosaukumu. Mums ir trīs veidi, kā pārbaudīt faila pieejamību. Pirmais izmanto testa komandu, otrais izmanto if ar izteiksmi kvadrātiekavās, bet trešais arī ar kvadrātiekavām, ja, bet, kā norādīts zemāk:

  1. tests EXPRESSION.
  2. ja [EXPRESSION]
  3. ja [[EXPRESSION]]

Sapratīsim to ar piemēriem:

1) tests [izteiksme]
Kopējiet norādīto skriptu un ielīmējiet to redaktorā, saglabājiet to:

#!/bin/bash
faila nosaukums= fails1
ja pārbaude -f '$ faila nosaukums';
tad
izmest ārā '$ failuir atradis. '
citādi
izmest ārā '$ failunav atrasts '
būt

Izeja:

Tā kā manā direktorijā šāda faila nav, kods parāda ziņojumu Fails nav atrasts.

2) ja [izteiksme]

Nokopējiet šo skriptu, lai pārbaudītu, vai fails pastāv vai nav:

#!/bin/bash
faila nosaukums= mans fails.txt
ja [ -f '$ faila nosaukums' ];
tad
izmest ārā '$ faila nosaukumsir atradis. '
citādi
izmest ārā 'faila nosaukums nav atrasts'
būt

Izeja:

3) ja [[izteiksme]]

Nokopējiet zemāk rakstīto skriptu un ielīmējiet to terminālī:

#!/bin/bash
faila nosaukums= testa fails
ja [[ -f '$ faila nosaukums' ]];
tad
izmest ārā '$ faila nosaukumsir atradis. '
citādi
izmest ārā '$ faila nosaukumsnav atrasts '
būt

Izeja:

Lai pārbaudītu direktoriju:

3) Ievadot direktorija nosaukumu, rakstot skriptu

Izmantojiet -d karodziņu, lai pārbaudītu direktorija esamību.

Zemāk minētajā skriptā dir11 ir mainīgais, kurā saglabājat failu, kuru atrodat; šajā piemērā es vēlos pārbaudīt direktorija nosaukumu testDir pastāv vai nav.

#!/bin/bash
dir11= testDir
ja [ -d '$ dir11' ]
tad
izmest ārā 'Katalogs ir atrasts'
citādi
izmest ārā 'Katalogs nav atrasts'
būt

Izeja:

2) Terminālī ievadot faila nosaukumu:
Palaižot komandu terminālī, lai pārbaudītu, vai direktorijs pastāv vai nav, jums jāievada meklētā direktorija nosaukums:

#!/bin/bash
izmest ārā 'ierakstiet direktorija nosaukumu.'
lasītRež. 1
ja [ -d 'Dir1' ]
tad
izmest ārā 'katalogs ir atrasts'
citādi
izmest ārā 'direktorijs nav atrasts'
būt

Izeja:

Faila pārbaude, neizmantojot paziņojumu if:

Pārbaudes komandu var izpildīt bez paziņojuma if. Tas parādīs izvadi tikai tad, ja fails pastāv; pretējā gadījumā nebūtu izvades:

Rakstīt skriptu:

  1. pārbaude -fmyfile.txt&& izmest ārā 'fails ir atrasts'

  2. [ -fmyfile.txt] && izmest ārā '$ failuir atrasts. '

  3. [[ -fmyfile.txt]] && izmest ārā '$ failsir atrasts. '

Izeja:

Pārbaudiet direktoriju, neizmantojot paziņojumu if:

Izmantojiet tālāk minētos paziņojumus, lai pārbaudītu, vai direktorijs ir vai nav:

  1. [[ -dtestDir]] && izmest ārā 'direktorijs pastāv'

  2. 2) [ -dtestDir] && izmest ārā 'direktorijs pastāv'

Izeja:

Vairāku failu/direktoriju pārbaude:

1) Vairāku failu pārbaude ar paziņojumiem:
Izmantojiet karodziņu -a, lai pārbaudītu dažādu failu esamību, nevis izmantojiet ligzdotus if/else paziņojumus:

#!/bin/bash
ja [ -fjauns_fails.txt-uz -fnewfile.txt];tad
izmest ārā 'Abi faili pastāv.'
būt

Vēl viens veids ir:

#!/bin/bash
ja [[ -fjauns_fails.txt&& -fnewfile.txt]];tad
izmest ārā 'Abi faili pastāv.'
būt

Izeja:

2) Vairāku failu pārbaude, neizmantojot paziņojumu if:
Izmantojiet šo paziņojumu, lai vienlaikus pārbaudītu vairākus failus 1, neizmantojot, ja:

  1. [[ -fjauns_fails.txt&& -fnewfile.txt]] && izmest ārāAbi faili tiek aizvērti.

  2. [[ -fjauns_fails.txt&& -fnewfile.txt]] && izmest ārāAbi faili tiek aizvērti.

Izeja:

Secinājums:

Šajā rakstā ir parādīts, kā izmantot bash skriptu, lai pārbaudītu failu vai direktoriju. Mēs izmantojām dažādas iespējas, lai pārbaudītu faila pieejamību. Pirmkārt, mēs izmantojam testa komandu ar dažādiem karodziņiem. Tad mēs iemācījāmies izmantot if, nested if-else un bez if paziņojumiem, lai pārbaudītu failu vai direktoriju. Mēs arī apskatījām, kā pārbaudīt vairākus failus vai direktorijus.