ஒரு கோப்பு பாஷில் இருக்கிறதா என்று எப்படி சரிபார்க்க வேண்டும்

How Check If File Exists Bash



லினக்ஸில் ஒரு கோப்பின் கிடைக்கும் தன்மையை சரிபார்க்க பல வழிகள் உள்ளன. பேஷ் ஸ்கிரிப்டிங்கில் உள்ள சோதனை கட்டளை ஒரு கோப்பின் இருப்பை சரிபார்க்க முக்கிய அணுகுமுறைகளில் ஒன்றாகும்.
பாஷ் ஸ்கிரிப்டிங் மூலம் உங்கள் கணினியில் ஒரு கோப்பு இருப்பதைப் பற்றி விவாதிப்பதே இந்த வழிகாட்டியின் கவனம்:

பாஷ் ஸ்கிரிப்டைப் பயன்படுத்தி கோப்பு இருப்பை எவ்வாறு சரிபார்க்கலாம்:

1) முனையத்தில் கோப்பு பெயரை உள்ளிடுவதன் மூலம்:







முதலில், நாம் ஒரு பாஷ் ஸ்கிரிப்ட் கோப்பை உருவாக்க வேண்டும், கீழே குறிப்பிடப்பட்டுள்ள கட்டளையைப் பயன்படுத்தவும்:



$தொடுதல்testfile.sh

நான் உருவாக்கிய கோப்பின் பெயர் testfile.sh, .sh நீட்டிப்பு ஷெல் ஸ்கிரிப்ட் கோப்பைக் குறிக்கிறது:







எந்த உரை திருத்தியிலும் testfile.sh ஐத் திறக்கவும். பின்னர் ஸ்கிரிப்டை எழுதுங்கள், சேமி என்பதை அழுத்துவதன் மூலம் சேமிக்கவும்.

முனையத்தில் பயனரிடமிருந்து ஒரு கோப்பு பெயரைக் கேட்டு ஒரு கோப்பைக் கண்டுபிடிப்பது ஒரு வழி.



பயன்படுத்தவும் -f கோப்பின் இருப்பை சரிபார்க்க.

கீழே உள்ள ஸ்கிரிப்டை எழுதுங்கள்:

#!/பின்/பேஷ்
வெளியே எறிந்தார் 'உங்கள் கோப்பு பெயரை உள்ளிடவும்'
படிnewfile1
என்றால் [ -f '$ newfile1' ]
பிறகு
வெளியே எறிந்தார் 'கோப்பு கண்டுபிடிக்கப்பட்டது'
வேறு
வெளியே எறிந்தார் 'கோப்பு கிடைக்கவில்லை'
இரு

முனையத்திற்குச் சென்று வெளியீட்டை அச்சிட கோப்பை இயக்கவும்:

./filename.sh

அனுமதி மறுக்கப்பட்ட செய்தி முனையத்தில் காட்டப்படும்.

கீழே குறிப்பிடப்பட்டுள்ள கட்டளையை செயல்படுத்துவதன் மூலம் அதை செயல்படுத்தக்கூடியதாக ஆக்குங்கள்:

$chmod+ x testfile.sh

கோப்பு பெயரை உள்ளிடவும், அது வெளியீட்டை அச்சிடும்:

2) ஸ்கிரிப்ட் எழுதும் போது கோப்பு பெயரை உள்ளிடுவதன் மூலம்:
ஸ்கிரிப்டை எழுதும் போது கோப்பு பெயரை கொடுத்து ஒரு கோப்பை கண்டுபிடிக்க மற்றொரு வழி. கோப்பின் கிடைக்கும் தன்மையை சரிபார்க்க எங்களுக்கு மூன்று வழிகள் உள்ளன. முதலாவது சோதனை கட்டளையைப் பயன்படுத்துகிறது, இரண்டாவது சதுர அடைப்புக்குறிக்குள் ஒரு வெளிப்பாட்டுடன் இருந்தால், மூன்றாவதாக கீழே குறிப்பிடப்பட்டுள்ளபடி இரட்டை சதுர அடைப்புக்குறிக்குள் உள்ளது:

  1. சோதனை வெளிப்பாடு.
  2. என்றால் [வெளிப்பாடு]
  3. [[வெளிப்பாடு]] என்றால்

உதாரணங்களுடன் புரிந்துகொள்வோம்:

1) சோதனை [வெளிப்பாடு]
கொடுக்கப்பட்ட ஸ்கிரிப்டை நகலெடுத்து எடிட்டரில் ஒட்டவும், சேமிக்கவும்:

#!/பின்/பேஷ்
கோப்பு பெயர்= கோப்பு 1
என்றால் சோதனை -f '$ கோப்பு பெயர்';
பிறகு
வெளியே எறிந்தார் '$ கோப்புகண்டுபிடிக்கப்பட்டது.'
வேறு
வெளியே எறிந்தார் '$ கோப்புகண்டுபிடிக்கப்படவில்லை '
இரு

வெளியீடு:

எனது கோப்பகத்தில் அத்தகைய கோப்பு இல்லை என்பதால், குறியீடு கோப்பைக் காண்பிக்கும் செய்தி காணப்படவில்லை.

2) என்றால் [வெளிப்பாடு]

கோப்பு இருக்கிறதா இல்லையா என்பதை சரிபார்க்க பின்வரும் ஸ்கிரிப்டை நகலெடுக்கவும்:

#!/பின்/பேஷ்
கோப்பு பெயர்= myfile.txt
என்றால் [ -f '$ கோப்பு பெயர்' ];
பிறகு
வெளியே எறிந்தார் '$ கோப்பு பெயர்கண்டுபிடிக்கப்பட்டது.'
வேறு
வெளியே எறிந்தார் 'கோப்பு பெயர் கிடைக்கவில்லை'
இரு

வெளியீடு:

3) [[வெளிப்பாடு]] என்றால்

கீழே எழுதப்பட்ட ஸ்கிரிப்டை நகலெடுத்து முனையத்தில் ஒட்டவும்:

#!/பின்/பேஷ்
கோப்பு பெயர்= சோதனை கோப்பு
என்றால் [[ -f '$ கோப்பு பெயர்' ]];
பிறகு
வெளியே எறிந்தார் '$ கோப்பு பெயர்கண்டுபிடிக்கப்பட்டது.'
வேறு
வெளியே எறிந்தார் '$ கோப்பு பெயர்கண்டுபிடிக்கப்படவில்லை '
இரு

வெளியீடு:

கோப்பகத்தை சரிபார்க்க:

3) ஒரு ஸ்கிரிப்ட் எழுதும் போது அடைவு பெயரை உள்ளிடுவதன் மூலம்

பயன்படுத்த -டி ஒரு அடைவு இருப்பதை சரிபார்க்க கொடி.

கீழே குறிப்பிடப்பட்ட ஸ்கிரிப்டில், dir11 என்பது நீங்கள் காணும் கோப்பை சேமித்து வைக்கும் மாறி; இந்த எடுத்துக்காட்டில், டெஸ்ட்டிர் டைரக்டரி பெயர் இருக்கிறதா இல்லையா என்பதை நான் சரிபார்க்க விரும்புகிறேன்.

#!/பின்/பேஷ்
dir11= testDir
என்றால் [ -டி '$ dir11' ]
பிறகு
வெளியே எறிந்தார் 'அடைவு கிடைத்தது'
வேறு
வெளியே எறிந்தார் 'அடைவு காணப்படவில்லை'
இரு

வெளியீடு:

2) முனையத்தில் கோப்பு பெயரை உள்ளிடுவதன் மூலம்:
அடைவு உள்ளதா இல்லையா என்பதை சரிபார்க்க முனையத்தில் கட்டளையை இயக்கும்போது, ​​நீங்கள் தேடும் அடைவு பெயரை உள்ளிட வேண்டும்:

#!/பின்/பேஷ்
வெளியே எறிந்தார் 'உங்கள் அடைவு பெயரை தட்டச்சு செய்யவும்.'
படிடிர் 1
என்றால் [ -டி 'டிர் 1' ]
பிறகு
வெளியே எறிந்தார் அடைவு கண்டுபிடிக்கப்பட்டது '
வேறு
வெளியே எறிந்தார் 'அடைவு கிடைக்கவில்லை'
இரு

வெளியீடு:

If அறிக்கையைப் பயன்படுத்தாமல் கோப்பைச் சரிபார்க்கிறது:

If அறிக்கை இல்லாமல் சோதனை கட்டளையை செயல்படுத்த முடியும். கோப்பு இருந்தால் மட்டுமே அது வெளியீட்டை காண்பிக்கும்; இல்லையெனில், வெளியீடு இருக்காது:

ஸ்கிரிப்ட் எழுது:

  1. சோதனை -fmyfile.txt&& வெளியே எறிந்தார் 'கோப்பு கண்டுபிடிக்கப்பட்டது'

  2. [ -fmyfile.txt] && வெளியே எறிந்தார் '$ கோப்புகண்டுபிடிக்கப்பட்டது.'

  3. [[ -fmyfile.txt]] && வெளியே எறிந்தார் '$ கோப்புகண்டுபிடிக்கப்பட்டது.'

வெளியீடு:

If அறிக்கையைப் பயன்படுத்தாமல் கோப்பகத்தைச் சரிபார்க்கவும்:

ஒரு கோப்பகம் இருக்கிறதா இல்லையா என்பதை சரிபார்க்க கீழே குறிப்பிடப்பட்டுள்ள அறிக்கைகளைப் பயன்படுத்தவும்:

  1. [[ -டிtestDir]] && வெளியே எறிந்தார் 'அடைவு உள்ளது'

  2. 2) [ -டிtestDir] && வெளியே எறிந்தார் 'அடைவு உள்ளது'

வெளியீடு:

பல கோப்புகள்/கோப்பகங்களைச் சரிபார்க்கிறது:

1) அறிக்கைகள் இருந்தால் பல கோப்புகளை சரிபார்க்கிறது:
உள்ளமைக்கப்பட்ட if/வேறு அறிக்கைகளைப் பயன்படுத்துவதற்குப் பதிலாக பல்வேறு கோப்புகளின் இருப்பைச் சரிபார்க்க -a கொடியைப் பயன்படுத்தவும்:

#!/பின்/பேஷ்
என்றால் [ -fnew_file.txt-செய்ய -fnewfile.txt];பிறகு
வெளியே எறிந்தார் 'இரண்டு கோப்புகளும் உள்ளன.'
இரு

மற்றொரு வழி:

#!/பின்/பேஷ்
என்றால் [[ -fnew_file.txt&& -fnewfile.txt]];பிறகு
வெளியே எறிந்தார் 'இரண்டு கோப்புகளும் உள்ளன.'
இரு

வெளியீடு:

2) if அறிக்கையைப் பயன்படுத்தாமல் பல கோப்புகளைச் சரிபார்க்கிறது:
பின்வரும் அறிக்கையைப் பயன்படுத்தி ஒரே நேரத்தில் பல கோப்புகளைச் சரிபார்க்கவும் 1 இல்லாமல்:

  1. [[ -fnew_file.txt&& -fnewfile.txt]] && வெளியே எறிந்தார்இரண்டு கோப்புகளும் வெளியேறும்.

  2. [[ -fnew_file.txt&& -fnewfile.txt]] && வெளியே எறிந்தார்இரண்டு கோப்புகளும் வெளியேறும்.

வெளியீடு:

முடிவுரை:

இந்த கட்டுரை ஒரு கோப்பு அல்லது கோப்பகத்தை சரிபார்க்க பாஷ் ஸ்கிரிப்டை எவ்வாறு பயன்படுத்துவது என்பதைக் காட்டுகிறது. ஒரு கோப்பின் இருப்பை சரிபார்க்க பல்வேறு விருப்பங்களைப் பயன்படுத்தினோம். முதலில், நாங்கள் வெவ்வேறு கொடிகள் கொண்ட சோதனை கட்டளையைப் பயன்படுத்துகிறோம். கோப்பு அல்லது கோப்பகத்தை சரிபார்க்க if, else if மற்றும் if, if அறிக்கைகள் இல்லாமல் பயன்பாட்டை நாங்கள் கற்றுக்கொண்டோம். பல கோப்புகள் அல்லது கோப்பகங்களை எவ்வாறு சரிபார்க்கலாம் என்பதையும் நாங்கள் பார்த்தோம்.