Linux shell 获取路径、文件名、文件后缀
以 make 文件为例:
file=/usr/bin/make
[root@CentOs7]# echo ${file%*/}
/usr/bin/make
[root@CentOs7]# echo ${file%%*/}
/usr/bin/make
[root@CentOs7]# echo ${file%%/*}
[root@CentOs7]# echo ${file%/*}
/usr/bin
[root@CentOs7]# echo ${file#/*}
usr/bin/make
[root@CentOs7]# echo ${file##/*}
[root@CentOs7]# echo ${file##*/}
make
[root@CentOs7]# echo ${file#*/}
usr/bin/make
file=/usr/share/man/man1/make.1.gz
[root@CentOs7]# echo ${file%*/}
/usr/share/man/man1/make.1.gz
[root@CentOs7]# echo ${file%%*/}
/usr/share/man/man1/make.1.gz
[root@CentOs7]# echo ${file%%/*}
[root@CentOs7]# echo ${file%/*}
/usr/share/man/man1
[root@CentOs7]# echo ${file#/*}
usr/share/man/man1/make.1.gz
[root@CentOs7]# echo ${file##/*}
[root@CentOs7]# echo ${file##*/}
make.1.gz
[root@CentOs7]# echo ${file#*/}
usr/share/man/man1/make.1.gz
Linux shell 获取路径、文件名、文件后缀的更多相关文章
- Linux Shell 批量更换文件名或后缀名
把下列所有.c的文件名修改为.cc rename .c .cc *.c
- linux下怎样批量更改文件后缀名
今天又有同学问linux下怎样批量更改文件后缀名,这个问题被别人问到三次了,所以这里给出几个解决方法 一.rename解决 1. Ubuntu系统下 rename 's//.c//.h/' ./* ...
- SpringBoot读取Linux服务器某路径下文件\读取项目Resource下文件
// SpringBoot读取Linux服务器某路径下文件 public String messageToRouted() { File file = null; try { file = Resou ...
- linux shell获取show slave status方法
linux shell获取show slave status方法<pre>#!/bin/basharray=($(mysql -u数据库账号 -p数据库密码 -e "show s ...
- bat 处理文件路径 (所在目录,文件名,文件后缀名,完整文件名,无后缀路径)
echo off setlocal enabledelayedexpansion set "EXCEL_DIR=%cd%\excel" for /R %EXCEL_DIR% %%f ...
- Linux shell 之 提取文件名和目录名的一些方法
很多时候在使用Linux的shell时,我们都需要对文件名或目录名进行处理,通常的操作是由路径中提取出文件名,从路径中提取出目录名,提取文件后缀名等等.例如,从路径/dir1/dir2/file.tx ...
- linux shell获取键盘输入
linux shell从键盘获取输入 代码1: #!/bin/bash #提示“Input your choice:”,把用户的输入保存入变量choice_user中read -p "Inp ...
- linux shell 获取文件夹全文绝对路径
在ls中列出文件的绝对路径 ls | sed "s:^:`pwd`/:" # 就是在每行记录的开头加上当前路径 ps: #在所有行之前/后加入某个字符串 sed 's/^/stri ...
- Linux shell 获取目录下时间最新的文件的文件名
ls -lt /dirname/ | grep filename | head -n 1 |awk '{print $9}' 逐条解释: ls -lt /dirname/ 列出此目录下的所有文件并按照 ...
- 【操作系统作业—lab1】linux shell脚本 遍历目标文件夹和所有文件 | 包括特殊字符文件名的处理
要求:写一个linux bash脚本来查看目标文件夹下所有的file和directory,并且打印出他们的绝对路径. 运行command:./myDir.sh input_path output_ ...
随机推荐
- 联邦GNN综述与经典算法介绍
作者:京东科技 李杰 联邦学习和GNN都是当前AI领域的研究热点.联邦学习的多个参与方可以在不泄露原始数据的情况下,安全合规地联合训练业务模型,目前已在诸多领域取得了较好的结果.GNN在应对非欧数据结 ...
- SQLSERVER 临时表和表变量到底有什么区别?
一:背景 1. 讲故事 今天和大家聊一套面试中经常被问到的高频题,对,就是 临时表 和 表变量 这俩玩意,如果有朋友在面试中回答的不好,可以尝试看下这篇能不能帮你成功迈过. 二:到底有什么区别 1. ...
- 配置文件、RDB、Jedis
配置文件 # Note on units: when memory size is needed, it is possible to specify # it in the usual form o ...
- javaEE(常用API集合<Collection和Map>)
javaEE 常用API Object类 public String toString() //打印地址 :类的全类名@内存地址 存在的意义:为了被子类去重写,以便于返回对象的内容信息,而不是地址信息 ...
- JZOJ 4366. 【GDKOI2016】项链
\(\text{Problem}\) 给出一个项链,删去连续的一部分,使剩下的对称,且长度最长 \(\text{Analysis}\) 可以发现,剩下的合法项链一定是由两个回文串接起来(由对称性质可知 ...
- ubuntu 一键安装lnmp环境
转载csdn: ubuntu 一键安装lnmp环境_手艺人小在的博客-CSDN博客 注意:采用编译安装方法,花费时间较长,这个只有稳定版的,没有高版本的. 转载vpsgo: Linux上一键安装LNM ...
- 问题集锦 ~ MySQL
# 在存储过程中,变量赋值失败 declare parent text; select parent into Parent where id = 1; select Parent; 查询的字段不能和 ...
- 自定义StringByteLength
using HKElectric.ESafety.Utilities; using System.ComponentModel.DataAnnotations; namespace HKElectri ...
- centos7端口转发工具rinetd
1.下载软件 wget http://li.nux.ro/download/nux/misc/el7/x86_64/rinetd-0.62-9.el7.nux.x86_64.rpm 2.安装软件 yu ...
- 如何使用visual studio code的插件remote ssh远程操作virtual box虚拟机
0 Remote-SSH是什么?为什么要用它? The Remote-SSH extension lets you use any remote machine with a SSH server a ...