Как да извлечете име на файл и разширение в Bash

Kak Da Izvlecete Ime Na Fajl I Razsirenie V Bash



Bash е мощна обвивка на командния ред, която обикновено се използва в операционни системи Linux и Unix. Една често срещана задача при работа с файлове в Bash е да извлечете името на файла и разширението от пътя на файла. Тази статия ще обсъди как да извлечете името на файла и разширението в Bash и ще предостави примери за това как да използвате тези стойности във вашите скриптове.

Извличане на името на файла и разширението в Bash

Има няколко начина за извличане на името на файла и разширението в Bash, ето три често срещани метода:







1: Използване на командата Basename

The основно име командата връща името на файла от пътя на файла и извлича името на файла и разширението. Можете да използвате основно име команда с -наставка опция, която премахва посочения суфикс от името на файла, както в дадения по-долу код:



#!/bin/bash
# Примерен път на файл
файлова пътека = '/path/to/file.txt'

# Извличане на име на файл
име на файл =$ ( основно име $file_path )

# Извличане на разширение
разширение = ' ${filename##*.} '

ехо 'Име на файл: $име на файл '
ехо „Разширение: $разширение '







2: Използване на разширението на параметрите

The разширяване на параметъра синтаксисът е мощна функция на Bash, която ви позволява да манипулирате низове. За да извлечете името на файла и разширението с помощта на разширение на параметър, можете да използвате ${parameter##word} синтаксис, който премахва най-дългото съвпадение на посочения шаблон от началото на параметъра, както е в кода по-долу:

#!/bin/bash
# Примерен път на файл
файлова пътека = '/path/to/file.txt'
# Извличане на име на файл
име на файл = ' ${file_path##*/} '
# Извличане на разширение
разширение = ' ${filename##*.} '
ехо 'Име на файл: $име на файл '
ехо „Разширение: $разширение '



3: Използване на променливата IFS (Internal Field Separator).

The IFS променлива се използва от Bash за разделяне на низове в полета чрез настройка на IFS променлива към разделителя на пътя (“/”). Можете да извлечете името и разширението на файла от пътя на файла чрез тази променлива, като използвате дадения по-долу код:

#!/bin/bash
# Примерен път на файл
файлова пътека = '/path/to/file.txt'
# Задайте IFS на '/'
IFS = '/' Прочети части <<< ' $file_path '

# Извличане на име на файл
име на файл = ' ${части[-1]} '
# Извличане на разширение
разширение = ' ${filename##*.} '
ехо 'Име на файл: $име на файл '
ехо „Разширение: $разширение '

Заключение

Извличането на името на файла и разширението от пътя на файла е обичайна задача при работа с файлове в Bash. Тази статия обсъжда три често срещани метода за извличане на името на файла и разширението в Bash. С помощта на основно име команда, на разширяване на параметъра синтаксис, или IFS променлива , можете бързо и лесно да извлечете името на файла и стойностите на разширението от пътя на файла.