Kako ekstrahirati ime datoteke in pripono v Bashu

Kako Ekstrahirati Ime Datoteke In Pripono V Bashu



Bash je zmogljiva lupina ukazne vrstice, ki se pogosto uporablja v operacijskih sistemih Linux in Unix. Ena pogosta naloga pri delu z datotekami v Bashu je ekstrahiranje imena datoteke in pripone iz poti datoteke. Ta članek bo razpravljal o tem, kako ekstrahirati ime datoteke in pripono v Bashu, ter navedel primere, kako uporabiti te vrednosti v svojih skriptih.

Ekstrahiranje imena datoteke in pripone v Bashu

Obstaja več načinov za ekstrahiranje imena datoteke in pripone v Bashu, tukaj so trije običajni načini:







1: Uporaba ukaza Basename

The osnovno ime ukaz vrne ime datoteke iz poti datoteke in ekstrahira ime datoteke in končnico. Lahko uporabite osnovno ime ukaz z – pripona možnost, ki odstrani določeno pripono iz imena datoteke, kot je prikazano v spodnji kodi:



#!/bin/bash
# Primer poti do datoteke
pot_datoteke = '/pot/do/datoteke.txt'

# Ekstrahiraj ime datoteke
Ime datoteke =$ ( osnovno ime $file_path )

# Izvleček razširitve
razširitev = ' ${ime datoteke##*.} '

odmev 'Ime datoteke: $ime datoteke '
odmev 'Razširitev: $razširitev '







2: Uporaba razširitve parametrov

The razširitev parametrov sintaksa je zmogljiva lastnost Basha, ki omogoča manipulacijo nizov. Če želite izvleči ime datoteke in pripono z razširitvijo parametrov, lahko uporabite ${parameter##word} sintaksa, ki odstrani najdaljše ujemanje podanega vzorca z začetka parametra, kot je prikazano v spodnji kodi:

#!/bin/bash
# Primer poti do datoteke
pot_datoteke = '/pot/do/datoteke.txt'
# Ekstrahiraj ime datoteke
Ime datoteke = ' ${file_path##*/} '
# Izvleček razširitve
razširitev = ' ${ime datoteke##*.} '
odmev 'Ime datoteke: $ime datoteke '
odmev 'Razširitev: $razširitev '



3: Uporaba spremenljivke IFS (Internal Field Separator).

The IFS spremenljivka uporablja Bash za razdelitev nizov v polja z nastavitvijo IFS spremenljivka na ločilo poti (“/”). Ime datoteke in pripono lahko izvlečete iz poti datoteke prek te spremenljivke z uporabo spodnje kode:

#!/bin/bash
# Primer poti do datoteke
pot_datoteke = '/pot/do/datoteke.txt'
# Nastavite IFS na '/'
IFS = '/' prebrati -r -a deli <<< ' $file_path '

# Ekstrahiraj ime datoteke
Ime datoteke = ' ${deli[-1]} '
# Izvleček razširitve
razširitev = ' ${ime datoteke##*.} '
odmev 'Ime datoteke: $ime datoteke '
odmev 'Razširitev: $razširitev '

Zaključek

Ekstrahiranje imena datoteke in pripone iz poti datoteke je običajna naloga pri delu z datotekami v Bashu. Ta članek je obravnaval tri običajne metode za ekstrahiranje imena datoteke in pripone v Bashu. Z uporabo osnovno ime ukaz, razširitev parametrov sintakso ali IFS spremenljivka , lahko hitro in enostavno ekstrahirate ime datoteke in vrednosti končnice iz poti datoteke.