shell脚本获取文件名、路径名、文件类型
发布日期:2021-06-23 04:43:29
浏览次数:5
分类:技术文章
本文共 1973 字,大约阅读时间需要 6 分钟。
1. 从字符串获取指定内容
从字符串中提取特定的信息,常用于获取文件名、文件类型、所在路径等。
1.1 获取字符串信息
用指定的方式(PATTERN)从字符串(PARAMETERS)中移除内容"\${PARAMETERS#PATTERN}" : 移除从开头匹配的字符串"\${PARAMETERS##PATTERN}": 移除从开头匹配最长的字符串"\${PARAMETERS%PATTERN}" : 移除从末尾匹配的字符串"\${PARAMETERS%%PATTERN}": 移除从末尾匹配最长的字符串
1.2 搜索并替换字符串中的信息
字符串的搜索与替换:"\${PARAMETERS/PATTERN/STRING}" : 从PARAMETERS中搜索PATTERN,并替换为STRING"\${PARAMETERS//PATTERN/STRING}": 从PARAMETERS中搜索全部的PATTERN,并替换为STRING"\${PARAMETERS/PATTERN}" : 从PARAMETERS中搜索PATTERN,并删除"\${PARAMETERS//PATTERN}" : 从PARAMETERS中搜索PATTERN,并全部删除
1.3 示例
########################################################################## File Name: getFilePathName.sh# Author: Toney Sun# mail: vip_13031075266@163.com# Created Time: 2020年04月17日 星期五 09时57分43秒# Function: 主要用来从字符串中获取文件名、路径名或者文件类型##########################################################################!/bin/bashstring=/mnt/hgfs/em嵌入式学习记录/shell/linuxShell-5/getFilePathName.shcat <
运行结果如下:
toney@ubantu:/mnt/hgfs/em嵌入式学习记录/shell/linuxShell-5$ ./getFilePathName.sh 用指定的方式(PATTERN)从字符串(PARAMETERS)中移除内容"${PARAMETERS#PATTERN}" : 移除从开头匹配的字符串"${PARAMETERS##PATTERN}": 移除从开头匹配最长的字符串"${PARAMETERS%PATTERN}" : 移除从末尾匹配的字符串"${PARAMETERS%%PATTERN}": 移除从末尾匹配最长的字符串/mnt/hgfs/em嵌入式学习记录/shell/linuxShell-5/getFilePathName.sh${ string#*/}=mnt/hgfs/em嵌入式学习记录/shell/linuxShell-5/getFilePathName.sh${ string##*/}=getFilePathName.sh${string%/*}=/mnt/hgfs/em嵌入式学习记录/shell/linuxShell-5${string%%/*}=字符串的搜索与替换:"${PARAMETERS/PATTERN/STRING}" : 从PARAMETERS中搜索PATTERN,并替换为STRING"${PARAMETERS//PATTERN/STRING}": 从PARAMETERS中搜索全部的PATTERN,并替换为STRING"${PARAMETERS/PATTERN}" : 从PARAMETERS中搜索PATTERN,并删除"${PARAMETERS//PATTERN}" : 从PARAMETERS中搜索PATTERN,并全部删除${string/shell/SHELL}=/mnt/hgfs/em嵌入式学习记录/sHELL/linuxShell-5/getFilePathName.sh${string//hell/HELL}=/mnt/hgfs/em嵌入式学习记录/sHELL/linuxSHELL-5/getFilePathName.sh${string/hell}=/mnt/hgfs/em嵌入式学习记录/s/linuxShell-5/getFilePathName.sh${string//hell}=/mnt/hgfs/em嵌入式学习记录/s/linuxS-5/getFilePathName.sh
收录在《shell脚本学习》
转载地址:https://blog.csdn.net/s2603898260/article/details/105574862 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月07日 09时56分39秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
python+opencv提取图片中的人脸
2019-04-28
SpringBoot 在启动时运行代码 按顺序执行不同业务
2019-04-28
java编写邮件发送
2019-04-28
永久关闭Selinux 防止docker下安装mongodb不能进入log 权限不够
2019-04-28
docker安装mongodb
2019-04-28
FEBS-CLOUD 搭建不足的坑,简介(入门级)
2019-04-28
docker 安装activemq
2019-04-28
docker安装redis
2019-04-28
centOS7永久关闭防火墙(防火墙的基本使用)
2019-04-28
centos7 docker 启动命令
2019-04-28
ubutun 18.02连接redis
2019-04-28
ubutun 18.2开启ssh 22
2019-04-28
汉诺塔
2019-04-28
二分查找
2019-04-28
Druid去除图片广告 springboot
2019-04-28
vbox-centos7配置静态网络
2019-04-28
centos7 scp命令使用
2019-04-28
MINA : line is too long 传递大字符串数据
2019-04-28
docker 安装es单机
2019-04-28