基础命令学习目录首页css
常见用法举例bashname命令用于获取路径中的文件名或路径名(获取的时候叶子节点的元素内容)html
basename path获取末尾的文件名或路径名linux
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 去掉末尾的指定字符
若是咱们不须要扩展名或是末尾的子字符串的时候,第二个参数指定其便可取消。shell
取消扩展名
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,包括了扩展名在内bash
1: [aliyunzixun@xxx.com lianxi]# ls namedb.data
2: namedb.data
3: [aliyunzixun@xxx.com lianxi]# basename namedb.data db.data
4: name
经过basename来获取末尾的文件名或目录名函数
$ 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,参数为空,basename会将参数左移二、basename最多接受两个参数,若是设置的参数多于两个,会提示错误。
一、$@$@ 为传递的参数二、$#$# 为传递参数的数量
三、$?
是shell变量,表示"最后一次执行命令"的退出状态,通常0表示成功,非0数值表示没有成功。切记:$?永远表示shell命令最后一次执行后的退出状态,当函数执行完毕后,若是又执行了其它命令,则$?再也不表示函数执行后的状态,而表示其它命令的退出状态.四、$!表明pid,进程id五、$$表明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测试