basename命令详解
基础命令学习目录首页
- 摘要:前言bashname命令用于获取路径中的文件名或路径名(获取的时候叶子节点的元素内容)常见用法举例basenamepath获取末尾的文件名或路径名1:[aliyunzixun@xxx.comlianxi]#basename/etc/passwd2:passwd3:[aliyunzixun@xxx.comlianxi]#basename/etc/man.config4:man.config5:[aliyunzixun@xxx.comlianxi]#basename/etc/6:
- 前言
bashname命令用于获取路径中的文件名或路径名(获取的时候叶子节点的元素内容)
常见用法举例
basename path
获取末尾的文件名或路径名
1: [aliyunzixun@xxx.com lianxi]# basename /etc/passwd
2: passwd
3: [aliyunzixun@xxx.com lianxi]# basename /etc/man.config
4: man.config
5: [aliyunzixun@xxx.com lianxi]# basename /etc/
6: etc 去掉末尾的指定字符
如果我们不需要扩展名或是末尾的子字符串的时候,第二个参数指定其即可取消。
取消扩展名
1: [aliyunzixun@xxx.com lianxi]# basename /etc/man.config
2: man.config
3: [aliyunzixun@xxx.com lianxi]# basename /etc/man.config .config
4: man
取消指定的字符
如下,要取消db.data,包括了扩展名在内
1: [aliyunzixun@xxx.com lianxi]# ls namedb.data
2: namedb.data
3: [aliyunzixun@xxx.com lianxi]# basename namedb.data db.data
4: name
总结
通过basename来获取末尾的文件名或目录名
以上是
linux命令详解:basename命令
- 的内容,更多
Linux 叶子 元素
- 的内容,请您使用右上方搜索功能获取相关信息。
- $ basename --help
$ basename /usr/bin/sort 输出"sort"。$ basename ./include/stdio.h .h 输出"stdio"。为basename指定一个路径,basename命令会删掉所有的前缀包括最后一个slash(‘/’)字符,然后将字符串显示出来。
basename [pathname] [suffix]basename [string] [suffix]suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。
- $ basename /tmp/test/file.txt
- file.txt
- $ basename /tmp/test/file.txt .txt
- file
1、如果像下面脚本中传递参数给basename,参数为空,basename会将参数左移2、basename最多接受两个参数,如果设置的参数多于两个,会提示错误。
- #!/bin/bash
- # basename.sh
- echo Testing basename
- echo -------------
- echo "basename \$1/\$2 .txt; suffix is .txt"
- filename=`basename $1/$2 .txt`
- echo $filename
- echo -------------
- echo "basename ab.c .c; suffix is .c"
- basename ab.c .c
- echo "basename ab b; suffix is b"
- basename ab b
- echo -------------
- echo Testing \$\@ and \$\#
- echo Output \$\@
- echo $@
- echo Output \$\#
- echo $#
- # end of basename.sh
- 没有参数传递的情况:
- $./basename.sh
- Testing basename
- -------------
- basename $1/$2 .txt; suffix is .txt
- /
- -------------
- basename ab.c .c; suffix is .c
- ab
- basename ab b; suffix is b
- a
- Testing $@ and $#
- -------------
- Output $@
- Output $#
- 0
- 传递参数的情况:
- $ ./basename.sh 1.txt 2.txt
- Testing basename
- ------------
- basename $1 .txt; suffix is .txt
- 1
- -------------
- basename ab.c .c; suffix is .c
- ab
- basename ab b; suffix is b
- a
- Testing $@ and $#
- -------------
- Output $@
- 1.txt 2.txt
- Output $#
- 2
1、$@$@ 为传递的参数2、$#$# 为传递参数的数量
- Testing $@ and $#
- -------------
- Output $@
- 1.txt 2.txt
- Output $#
- 2
3、$?
是shell变量,表示"最后一次执行命令"的退出状态,一般0表示成功,非0数值表示没有成功。切记:$?永远表示shell命令最后一次执行后的退出状态,当函数执行完毕后,如果又执行了其它命令,则$?不再表示函数执行后的状态,而表示其它命令的退出状态.4、$!代表pid,进程id5、$$代表ppid,父进程id
- $ ./skype &
- [2] 13549
- $ echo $!
- 13549
- $ echo $$
- 13032
- $ ps -ef | grep skype
- luck 13549 13032 4 19:19 pts/0 00:00:00 skype
原文链接:https://blog.csdn.net/wutao_water/article/details/39478631
转载于:https://www.cnblogs.com/machangwei-8/p/9570202.html
basename命令详解相关推荐
- basename 命令 详解
首先使用 --help 参数查看一下.basename命令参数很少,很容易掌握. $ basename --help 用法示例: $ basename /usr/bin/sort ...
- 容器编排技术 -- Kubernetes kubectl create configmap 命令详解
容器编排技术 -- Kubernetes kubectl create configmap 命令详解 1 kubectl create configmap 2 语法 3 示例 4 Flags kub ...
- UNIX经典命令详解
UNIX经典命令详解 第一章 目录及文件操作命令 1.1 ls [语法]: ls [-RadCxmlnogrtucpFbqisf1] [目录或文件......] [说明]: ls 命令列出指定目录下 ...
- updater-script命令详解教你写刷机脚本
updater-script命令详解,刷机脚本怎么写,这些问题都也算是安卓的入门知识了,今天就和大家讲解一下,讲解人是深度论坛的Seeyou,如果你想学习更多ROM制作安卓开发方面的知识,欢迎加入深度 ...
- 【测试】linux FIO命令详解(一):磁盘IO测试工具 fio (并简要介绍iostat工具)
目录 随看随用 FIO介绍 FIO 工具常用参数: fio工作参数可以写入配置文件 IO状态监控: Iostat介绍 与FIO相似的工具 fio测试脚本 提取iops和bw gunplot画图 Fio ...
- docker常用命令详解
docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: Doc ...
- oracle home 命令,$ORACLE_HOMEbin目录下所有命令的使用方法及命令详解
求$ORACLE_HOME/bin目录下所有命令的使用方法及命令详解 如题. $ORACLE_HOME/bin目录下有很多命令,那我们平时用到的也不是太多,即使用到的那部分可能用法也不是完全能掌握,所 ...
- 【FFmpeg】ffmpeg命令详解(三)高级选项
ffmpeg命令详解(三)高级选项 1.-map 2.-ignore_unknown 3.-copy_unknown 4.-map_channel 5.-map_metadata 6.-map_cha ...
- 【FFmpeg】ffmpeg命令详解(二)
ffmpeg命令详解(二) 4.流选择 4.1 自动选择流 4.2 手动选择流 5.命令行选择详解 5.1 命令行选项的值说明: 5.2 流说明符 5.3 通用选项 5.4 主选项 5.5 视频相关选 ...
最新文章
- python 解压缩 tar 包 或 tar.gz包
- 深入理解C++重载函数
- mongodb默认的用户名密码_MongoDB 设置账号和密码
- 高并发编程-Daemon Thread的创建以及使用场景分析
- Linq表达式、Lambda表达式你更喜欢哪个?
- SRS流媒体服务器——单机环境搭建和源码目录介绍
- 改变定时器获取传感器频度_称重传感器在高速定量分装系统的应用
- UC浏览器电脑版怎么自定义标签栏 标签栏位置修改教程
- zookeeper伪集群部署
- Entity Framework 学习中级篇2—存储过程(上)(转)
- java 的 provider_Java Provider.Service getProvider()用法及代码示例
- WPF MVVM设计模式的ViewModelBase和CommandBase代码
- IP组播之组播路由算法
- Q96:PT(3):基于噪声的纹理(Noise-Based Textures)(0)——概述
- (day 15 - 双指针)剑指 Offer 18. 删除链表的节点
- 电子设备的节能分析与设计
- win98万能显卡驱动_win98/98系统 u盘万能驱动
- 关于无线网络的静态ip与动态ip设置
- Python 中的 PIL 库
- Springboot+阿里云kafka踩坑实录
热门文章
- 深度报道 一个你所不知道的史玉柱
- 最快的 Houdini 和 V-Ray 云渲染服务
- 超级好看的ZYI官网单页html引导页网站源码
- 蓝桥杯真题——自动售水机
- 2019E0_G 生日宴会
- 十堰市人民小学一年级在计算机学校,2019年十堰市小学入学条件年满6岁及入学所需材料...
- html加js倒计时代码,分享最简单的JavaScript倒计时代码(附完整代码)
- 【RW007系列综合实战2】使用RW007模块连接小米蓝牙温湿度计2代
- RANSAC算法(附RANSAC直线拟合C++与Python版本)
- 程序员加班到深夜,隔天却被老板开除,调出监控后,网友:人渣