
SHELL命令
发布日期:2021-05-06 23:38:49
浏览次数:5
分类:技术文章
本文共 1236 字,大约阅读时间需要 4 分钟。
basename返回一个字符串参数的基本文件名称。
语法: basename String [ Suffix ]描述 basename 命令读取 String 参数,删除以 /(斜杠) 结尾的前缀以及任何指定的 Suffix 参数,并将剩余的基本文件名称写至标准输出。
basename 命令应用以下创建基本文件名称的规则:
如果 String 参数是 //(双斜杠) 或如果 String 参数包含的都是斜杠字符,则将字符串更改为单个 /(斜杠)。跳过步骤 2 到 4 从指定字符串除去任何拖尾的 / 字符。 如果在 String 参数中剩余任何 / 字符,则除去字符串的前缀直到(包含)最后一个 / 字符。 如果指定 Suffix 参数,且它和字符串中的剩余的字符相同,则不修改此字符串。
如果指定 Suffix 参数,且它和字符串中所有字符都不相同,但和字符串的后缀相同,则除去指定后缀
例如,输入:
basename /home/oracle/1.txt 1.txt结果是: 1.txt
basename /home/oracle/1.txt .txt结果是:1
接下来做一些测试:
>[/home/service/hs/temp]$basename 1.txt.old1.txt.old>[/home/service/hs/temp]$basename /1/1.txt.old1.txt.old>[/home/service/hs/temp]$basename /home/home/ 1home>[/home/service/hs/temp]$basename /home/home1 1home>[/home/service/hs/temp]$basename /home/home1 1home>[/home/service/hs/temp]$basename /home/home1 2home1>[/home/service/hs/temp]$basename /home/home1 1 2 basename: too many argumentsTry `basename --help' for more information.>[/home/service/hs/temp]$basename /home/home1/123/ 312>[/home/service/hs/temp]$basename /home/home1/124/ 3124
目录下有同名的文件
1.c 1.o 1.x
用命令重名成
1.c.bak 1.o.bak 1.x.bak
>[/home/service/hs/temp]$find . -name "1.[cox]" |xargs -i basename {}|xargs -t -i mv {} {}.bakmv 1.c 1.c.bakmv 1.o 1.o.bakmv 1.x 1.x.bak
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月06日 21时27分29秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
使用开源可视化工具来理解你的 Python 代码 | Linux 中国
2019-03-03
硬核观察 | 有人在比特币骗局中损失了 10 个比特币
2019-03-03
使用 top 命令了解 Fedora 的内存使用情况 | Linux 中国
2019-03-03
8皇后问题 递归 函数调用是重点
2019-03-03
1541 +1 *2 ²
2019-03-03
面试别慌!阿里专家带你从【入门+基础+进阶+项目】攻破SpringBoot
2019-03-03
【Java面试】30个 Java 集合面试必备的问题和答案
2019-03-03
华为鸿蒙到底是不是安卓系统套了个壳?
2019-03-03
fragment中recyclerview的重新加载问题
2019-03-03
window程序设计(1):第一个windows程序
2019-03-03
windows程序设计(4):文本输出
2019-03-03
21.2.3总结
2019-03-03
线性代数和数学期望杂题
2019-03-03
【SSL_P2876】2017年东莞市信息学特长生测试题 工程
2019-03-03
【洛谷_P1433】吃奶酪
2019-03-03
Base理论介绍
2019-03-03
volatile关键字和AtomicInteger
2019-03-03
redisTemplate.opsForHash()
2019-03-03