బాష్‌లో పొడిగింపు లేకుండా ఫైల్ పేరు చదవండి

Read Filename Without Extension Bash



Linux వినియోగదారులు అనేక ప్రయోజనాల కోసం క్రమం తప్పకుండా ఫైళ్లతో పని చేయాలి. కొన్నిసార్లు వినియోగదారులు ఫైల్ పొడిగింపును తీసివేయడం ద్వారా మాత్రమే ఫైల్ యొక్క బేస్ పేరును చదవవలసి ఉంటుంది. ఫైల్ పేరు మరియు పొడిగింపును లినక్స్‌లోని విభిన్న వేరియబుల్స్‌పై వేరు చేసి నిల్వ చేయవచ్చు. బాష్ అంతర్నిర్మిత ఆదేశం మరియు షెల్ పరామితి విస్తరణ ఫైల్ యొక్క పొడిగింపును తొలగించడానికి ఉపయోగించవచ్చు. ఈ ట్యుటోరియల్‌లో పైన పేర్కొన్న మార్గాలను ఉపయోగించి పొడిగింపు లేకుండా ఫైల్ పేరు ఎలా చదవబడుతుంది.

ఫైల్ పేరును చదవడానికి `బేస్ నేమ్` ఆదేశాన్ని ఉపయోగించడం

డైరెక్టరీ లేదా ఫైల్ మార్గం నుండి పొడిగింపు లేకుండా ఫైల్ పేరును చదవడానికి `బేస్ నేమ్` కమాండ్ ఉపయోగించబడుతుంది.







వాక్యనిర్మాణం:



బేస్ పేరుపేరు[SUFFIX]

లేదా



బేస్ పేరుఎంపిక ... పేరు ...

ఇక్కడ, NAME పూర్తి పేరుతో ఫైల్ పేరు లేదా ఫైల్ పేరును కలిగి ఉండవచ్చు. SUFFIX ఐచ్ఛికం మరియు ఇది వినియోగదారు తొలగించాలనుకుంటున్న ఫైల్ పొడిగింపు భాగాన్ని కలిగి ఉంటుంది. `బేస్‌నేమ్` కమాండ్‌లో కొన్ని ఎంపికలు ఉన్నాయి, ఇవి క్రింద వివరించబడ్డాయి.





ఎంపికలు

పేరు వివరణ
-వరకు కమాండ్ ఆర్గ్యుమెంట్‌లుగా మార్గం లేదా మార్గం లేకుండా బహుళ ఫైల్ పేర్లను పాస్ చేయడానికి ఇది ఉపయోగించబడుతుంది.
-ఎస్ పొడిగింపును తీసివేయాల్సిన ప్రత్యయం వలె పాస్ చేయడానికి ఇది ఉపయోగించబడుతుంది.
-తో ప్రతి ఫైల్‌ను శూన్యంతో వేరు చేయడం ద్వారా బహుళ ఫైల్ పేర్లను ప్రదర్శించడానికి ఇది ఉపయోగించబడుతుంది.
-సహాయం ఇది `బేస్ నేమ్` కమాండ్ ఉపయోగించి సమాచారాన్ని ప్రదర్శించడానికి ఉపయోగించబడుతుంది.
-సంస్కరణ: Telugu ఇది వెర్షన్ సమాచారాన్ని ప్రదర్శించడానికి ఉపయోగించబడుతుంది.

ఉదాహరణ -1: NAME మరియు SUFFIX ఉపయోగించి

కింది `బేస్ నేమ్` కమాండ్ ఫైల్ పేరును పొడిగింపుతో తిరిగి పొందుతుంది. ఈ ఆదేశం నుండి SUFFIX తొలగించబడింది. ఇక్కడ, అవుట్‌పుట్ ఉంది 'Product.txt' .



$బేస్ పేరు /ఇంటికి/ఫహ్మిదా/కోడ్/product.txt

మీరు పొడిగింపు లేకుండా ఫైల్ పేరును తిరిగి పొందాలనుకుంటే, మీరు ఫైల్ ఎక్స్‌టెన్షన్‌ని SUFFIX గా `బేస్ నేమ్` కమాండ్‌తో అందించాలి. ఇక్కడ, పొడిగింపు .txt. ఫైల్ నుండి పొడిగింపును తీసివేయడానికి కింది ఆదేశాన్ని అమలు చేయండి.

$బేస్ పేరు /ఇంటికి/ఫహ్మిదా/కోడ్/product.txt .txt

ఉదాహరణ -2: ‘-a’ ఆప్షన్ మరియు NAME ని ఉపయోగించడం

`బేస్ నేమ్` కమాండ్ యొక్క‘ -a ’ఆప్షన్ ఉపయోగం ఈ ఉదాహరణలో చూపబడింది. ఇక్కడ, రెండు ఫైల్ పాత్‌లు `బేస్‌నేమ్` కమాండ్‌తో ఆర్గ్యుమెంట్‌లుగా పాస్ చేయబడతాయి. పొడిగింపుతో ప్రతి ఫైల్ పేరు మార్గం నుండి తిరిగి పొందబడుతుంది మరియు కొత్త లైన్ ద్వారా ముద్రించబడుతుంది.

$బేస్ పేరు -వరకు /ఇంటికి/ఫహ్మిదా/index.html/ఇంటికి/ఫహ్మిదా/కోడ్/emp.txt

ఉదాహరణ -3: ‘-z’ ఎంపిక మరియు NAME ని ఉపయోగించడం

కొత్త లైన్‌కు బదులుగా బహుళ ఫైల్ పేర్లను శూన్య విలువతో ముద్రించడానికి `-z 'ఎంపికను` బేస్ నేమ్` కమాండ్‌తో ఉపయోగిస్తారు. కింది ఆదేశం '-a' మరియు '-z' అనే రెండు ఎంపికలను కలిపి ఉపయోగిస్తుంది. ఇక్కడ, రెండు ఫైల్ పేర్లు, index.html మరియు emp.txt ఖాళీ లేదా కొత్త లైన్ లేకుండా ముద్రించబడుతుంది.

$బేస్ పేరు -ది /ఇంటికి/ఫహ్మిదా/index.html/ఇంటికి/ఫహ్మిదా/కోడ్/emp.txt

ఉదాహరణ -4: ‘-s’ ఎంపిక మరియు NAME ని ఉపయోగించడం

కింది ఆదేశాన్ని SUFFIX కి ప్రత్యామ్నాయంగా `బేస్ నేమ్` తో ఉపయోగించవచ్చు. ఫైల్ పొడిగింపు ఫైల్ నుండి ఫైల్ పొడిగింపును తీసివేయడానికి '-sh' ఎంపికతో పాస్ కావాలి. కింది ఉదాహరణ ఫైల్ నుండి ‘-sh’ పొడిగింపును తీసివేస్తుంది, ‘add.sh’.

$బేస్ పేరు -ఎస్.sh చేరిక.ష

ఉదాహరణ -5: SUFFIX లేకుండా ఫైల్ పొడిగింపును తీసివేయండి

మీరు ఫైల్ పేరు నుండి తీసివేయాలనుకుంటున్న ఫైల్ పొడిగింపు మీకు తెలియకపోతే, సమస్యను పరిష్కరించడానికి ఈ ఉదాహరణ మీకు సహాయం చేస్తుంది. అనే ఫైల్‌ను సృష్టించండి read_file.sh ఏదైనా పొడిగింపు యొక్క ఫైల్ పేరును తిరిగి పొందడానికి క్రింది కోడ్‌తో. ఫైల్ పేరు నుండి ఏదైనా పొడిగింపును తొలగించడానికి ఈ ఉదాహరణలో `sed` ఆదేశం ఉపయోగించబడుతుంది. మీరు స్క్రిప్ట్ రన్ చేస్తే, అవుట్‌పుట్ ‘ సగటు పొడిగింపును తీసివేసిన తర్వాత ' పై '.

read_file.sh

#!/బిన్/బాష్
# ఫైల్ పేరును పాత్‌తో సెట్ చేయండి
ఫైల్ పేరు='/home/fahmida/code/average.py'
# 'బాస్‌నేమ్' మరియు 'సెడ్' ఆదేశాన్ని ఉపయోగించి ఫైల్ పేరు పొడిగింపు లేకుండా చదవండి
బయటకు విసిరారు '$ (బేస్ పేరు '$ ఫైల్ పేరు' | సెడ్ 's/ (.**) ..*/ 1/')'

స్క్రిప్ట్ రన్ చేయండి.

$బాష్read_file.sh

ఉదాహరణ -6: ఫైల్ పొడిగింపును txt నుండి docx కి మార్చండి

పొడిగింపు లేని ఫైల్ పేరు ఫైల్‌ను ఒక పొడిగింపు నుండి మరొక పొడిగింపుకు మార్చాల్సిన అవసరం ఉంది. బాష్ స్క్రిప్ట్‌లోని `బేస్‌నేమ్` కమాండ్‌ని ఉపయోగించి మీరు అన్ని టెక్స్ట్ ఫైల్‌ల (.txt) వర్డ్ ఫైల్‌ల (.docx) ఎక్స్‌టెన్షన్‌ను ఎలా మార్చవచ్చో ఈ ఉదాహరణ చూపుతుంది. అనే ఫైల్‌ను సృష్టించండి, convert_file.sh కింది కోడ్‌తో. ఇక్కడ, అన్ని టెక్స్ట్ ఫైల్‌లను చదవడానికి ఫోర్-ఇన్ లూప్ ఉపయోగించబడుతుంది .పదము ప్రస్తుత డైరెక్టరీ నుండి పొడిగింపు. పొడిగింపు లేకుండా ఫైల్ పేరు `బేస్ నేమ్` కమాండ్ ద్వారా చదవబడుతుంది మరియు లూప్ యొక్క ప్రతి పునరుక్తిలో .docx ఎక్స్‌టెన్షన్‌ను జోడించడం ద్వారా పేరు మార్చబడింది.

convert_file.sh

#!/బిన్/బాష్
# లూప్ ప్రస్తుత డైరెక్టరీ నుండి ప్రతి టెక్స్ట్ ఫైల్‌ని చదువుతుంది
కోసంఫైల్ పేరులో 'ls *.పదము'
చేయండి
# మార్పిడికి ముందు టెక్స్ట్ ఫైల్ పేరును ముద్రించండి
బయటకు విసిరారు 'మార్పిడికి ముందు ఫైల్ పేరు:$ ఫైల్ పేరు'
# Txt ఫైల్ పొడిగింపును docx కి మార్చండి
mv - '$ ఫైల్ పేరు' '$ (బేస్ పేరు - '$ ఫైల్ పేరు' .txt).docx '
పూర్తి

స్క్రిప్ట్ రన్ చేయండి.

$బాష్convert_file.sh

`Ls` ఆదేశాన్ని ఉపయోగించి టెక్స్ట్ ఫైల్‌లు మార్చబడ్డాయో లేదో తనిఖీ చేయండి.

$ls

ఉదాహరణ -7: షెల్ పరామితి విస్తరణను ఉపయోగించి పొడిగింపు లేకుండా ఫైల్ పేరు చదవండి

బాష్‌లో పొడిగింపు లేకుండా ఫైల్ పేరు చదవడానికి షెల్ పరామితి విస్తరణ మరొక మార్గం. ఈ ఉదాహరణ షెల్ పరామితి విస్తరణ ఉపయోగాలను చూపుతుంది. కింది ఆదేశం వేరియబుల్, $ లో ఫైల్ పాత్‌నేమ్‌ను నిల్వ చేస్తుంది ఫైల్ పేరు .

$ఫైల్ పేరు='/var/usr/temp/myfile.tar.gz'

కింది ఆదేశం మార్గం నుండి అన్ని రకాల పొడిగింపులను తొలగిస్తుంది మరియు వేరియబుల్‌లో పొడిగింపు లేకుండా ఫైల్ మార్గాన్ని నిల్వ చేస్తుంది, $ ఫైల్ 1 .

$ఫైల్ 1='$ {ఫైల్ పేరు %%.*}'

కింది ఆదేశం మార్గం నుండి మాత్రమే ఫైల్ పేరును ప్రింట్ చేస్తుంది. ఇక్కడ, అవుట్‌పుట్ అవుతుంది myfile '.

$బయటకు విసిరారు '$ {file1 ##*/}'

ఫైల్ పేరు రెండు డాట్ (.) తో రెండు పొడిగింపులను కలిగి ఉంటే మరియు ఫైల్ యొక్క చివరి పొడిగింపును తీసివేయడం ద్వారా మీరు ఫైల్ పేరును చదవాలనుకుంటే, మీరు కింది ఆదేశాన్ని ఉపయోగించాలి. వేరియబుల్‌లోకి ఫైల్ మార్గాన్ని నిల్వ చేసే కింది ఆదేశాన్ని అమలు చేయండి, $ ఫైల్ 2 ఫైల్ యొక్క చివరి పొడిగింపును తొలగించడం ద్వారా.

$ఫైల్ 2='$ {ఫైల్ పేరు%.*}'

ఇప్పుడు, ఒక డాట్ (.) పొడిగింపుతో ఫైల్ పేరును ముద్రించడానికి కింది ఆదేశాన్ని అమలు చేయండి. ఇక్కడ, అవుట్‌పుట్ ఉంటుంది myfile.tar.

$బయటకు విసిరారు '$ {file2 ## * /}'

ముగింపు

పొడిగింపు లేకుండా ఫైల్ పేరు వివిధ ప్రయోజనాల కోసం అవసరం. ఫైల్ మార్పిడి వంటి కొన్ని ఉదాహరణలను ఉపయోగించడం ద్వారా పొడిగింపు లేకుండా ఫైల్ పేరు యొక్క కొన్ని ఉపయోగాలు ఈ ట్యుటోరియల్‌లో వివరించబడ్డాయి. ఈ ట్యుటోరియల్ ఫైల్ పేరు మరియు పొడిగింపును ఫైల్ మార్గం నుండి వేరు చేసే మార్గాలను తెలుసుకోవడానికి ఆసక్తి ఉన్న వినియోగదారులకు సహాయపడుతుంది. ఇక్కడ రెండు మార్గాలు వివరించబడ్డాయి. ఫైల్ పేరు నుండి మాత్రమే ఫైల్ పేరును సేకరించేందుకు వినియోగదారు ఈ మార్గాల్లో దేనినైనా అనుసరించవచ్చు.