Как получить путь, имя файла, имя файла без расширения и расширение файла.

FILENAME=${FILE##*/};FILEPATH=${FILE%/*};NOEXT=${FILENAME%\.*};EXT=${FILE##*.}


Команда присваивает значения переменным «FILENAME», «FILEPATH», «NOEXT» и «EXT» на основе значения переменной «FILE».

«FILENAME» содержит только имя файла с расширением, извлекается из переменной «FILE» с помощью параметра подстановки «${FILE##*/}».
«FILEPATH» содержит только путь к файлу, извлекается из переменной «FILE» с помощью параметра подстановки «${FILE%/*}».
«NOEXT» содержит имя файла без расширения, извлекается из переменной «FILENAME» с помощью параметра подстановки «${FILENAME%\.*}».
«EXT» содержит расширение файла, извлекается из переменной «FILE» с помощью параметра подстановки «${FILE##*.}».

Эта команда полезна, когда необходимо работать с различными частями имени файла, такими как путь, имя файла, расширение и имя файла без расширения.

Альтернативный способ получить эти значения — использовать команды «dirname» и «basename» в сочетании с параметрами подстановки, но данная команда производит все действия в одной строке.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *