Linux dirname、basename(转)

首先使用 --help 参数查看一下。basename命令参数很少,很容易掌握。
 
$ basename --help
 
用法示例:
 $ basename /usr/bin/sort       输出"sort"。
 $ basename ./include/stdio.h .h  输出"stdio"。
 
 为basename指定一个路径,basename命令会删掉所有的前缀包括最后一个slash(‘/’)字符,然后将字符串显示出来。

basename命令格式:
basename [pathname] [suffix]
basename [string] [suffix]
 
suffix为后缀,如果suffix被指定了,basename会将pathname或string中的suffix去掉。

额外补充:
1、[email protected]
[email protected] 为传递的参数
2、$#
$# 为传递参数的数量
3、$?
    是shell变量,表示"最后一次执行命令"的退出状态,一般0表示成功,非0数值表示没有成功。
切记:
$?永远表示shell命令最后一次执行后的退出状态,当函数执行完毕后,如果又执行了其它命令,则$?不再表示函数执行后的状态,而表示其它命令的退出状态.
4、$!
    代表pid,进程id
5、$$
    代表ppid,父进程id

6、$0代表shell命令本身

http://blog.chinaunix.net/uid-25505925-id-165025.html

一、dirname指令

1、功能:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目录的部分)

2、用法:dirname filename
例如下面几个例子
(1)# dirname /etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts
(2)# dirname /boot/grub/grub.conf
/boot/grub
(3)# dirname /etc/inittab
/etc
(4)# echo `pwd` && dirname modprobe.conf
/etc
.
(5)#echo `pwd` && dirname sysconfig/network-scripts/
/etc
sysconfig
Linux系统管理
二、basename指令

1、功能:从给定的包含绝对路径的文件名中去除左边目录部分或者同时去除某个后缀的内容(目录的部分),然后返回剩下的部分(非目录的部分)

2、用法:basename filename [suffix]
例如下面几个例子
(1)#basename /etc/sysconfig/network-scripts/ifcfg-eth0
ifcfg-eth0
(2)#basename /boot/grub/grub.conf
grub.conf
bt4破解无线网络
(3)#echo `pwd` && basename sysconfig/network-scripts/
/etc
network-scripts
(4)# basename /boot/grub/grub.conf.bak .bak
gru

http://blog.chinaunix.net/uid-25505925-id-165025.html

时间: 2024-08-11 09:57:30

Linux dirname、basename(转)的相关文章

linux 系统函数之 (dirname, basename)【转】

转自:http://blog.csdn.net/peter_cloud/article/details/9308333 版权声明:本文为博主原创文章,未经博主允许不得转载. 除非你的原件考虑跨平台. 在Linux编程多使用一些系统函数真的很方便,哎没办法越来越懒~~~~~~ 今天记录一下dirname 和basename这两个简单的处理文件路径的linux系统函数. 头文件: #include <libgen.h> 函数定义: char *dirname(char *path); char *

Linux Directory commands: mkdir, rmdir, tree dirname,basename

Linux命令之目录管理类命令:mkdir, rmdir, tree, dirname, basename mkdir命令:创建目录/新建目录 语法:mkdir [OPTION] /PATH/TO/SOMEWHERE 常见参数选项: -p:创建父目录//递归创建 -V:显示创建信息 示例: 如何/tmp/下创建目录:x_m, x_n, y_m, y_n # mkdir /tmp/{x_,y_}{m,n} rmdir命令:删除目录 语法:rmdir /PATH/TO/SOMEWHERE 常见的参数

总结:man, info, hwclock, cal, type, which, dirname, basename, who, which, whatis, makewhatis, hash, tty

man, info, help, date, hwclock, cal, shutdown, reboot, halt, poweroff, type, cd, which, dirname, basename, who, which, whatis, makewhatis, echo, hash, tty tac:cat按行逆序显示 file FILE...: 查看文件内容的格式 # mkdir `date +%F-%H-%M-%S`创建以当前时间命令目录,例如2014-02-11-16-25

linux之basename

1 NAME top 2 3 basename, dirname - parse pathname components 4 SYNOPSIS top 5 6 #include <libgen.h> 7 8 char *dirname(char *path); 9 10 char *basename(char *path); 11 DESCRIPTION top 12 13 Warning: there are two different functions basename() - see

关于Linux系统basename函数缺陷的思考

某模块作为前台进程独立运行时,运行命令携带命令行参数:作为某平台下守护进程子进程运行时,需要将命令行参数固化在代码里.类似如下写法: char *argv[] = {"./DslDriver", "-t", "/bin/VdslModemSco.bin"}; int argc = sizeof(argv) / sizeof(argv[0]); 随后,调用basename函数(头文件为libgen.h)解析argv[0],即"./DslD

dirname basename 截取路径中的目录以及文件名

dirname basename    截取路径中的目录以及文件名 windows 下面: #include "shlwapi.h"#pragma comment(lib, "shlwapi.lib ") LPTSTR PathFindFileName(LPCTSTR pPath) 功能:获得路径中的文件名 例: PathFileFileName( “c://Program Files//File.txt” ) => "File.txt”.

dirname, basename - 分析路径成员

总览 (SYNOPSIS) #include <libgen.h> char *dirname(char *path); char *basename(char *path); 描述 (DESCRIPTION) dirname 和 basename 把 以 null 结尾 的 路径名 分解为 目录 和 文件名. 一般情况下, dirname 返回 路径名 的 前面部分, 直到 (但不包括) 最后一个 '/', 而 basename 则 返回 最后一个 '/' 后面 的 内容. 如果 路径名 以

Linux dirname、basename 指令

http://blog.sina.com.cn/s/blog_9d074aae01013ctk.html 一.dirname指令 1.功能:从给定的包含绝对路径的文件名中去除文件名(非目录的部分),然后返回剩下的路径(目录的部分) 2.用法:dirname filename例如下面几个例子(1)# dirname /etc/sysconfig/network-scripts/ifcfg-eth0/etc/sysconfig/network-scripts(2)# dirname /boot/gr

Linux命令之目录管理类命令:mkdir, rmdir, tree, dirname, basename

mkdir命令:新建目录 语法:mkdir [OPTION] /PATH/TO/SOMEWHERE 常见参数选项: -p:创建父目录 -v: 显示创建过程 示例: 如何/tmp/下创建目录:x_m, x_n, y_m, y_n # mkdir /tmp/{x_,y_}{m,n} rmdir命令:删除目录 语法:rmdir /PATH/TO/SOMEWHERE 常见的参数选项: -p:连同上层的空目录一起删除(慎重使用) tree命令:以树状图列出目录的内容 语法:tree [OPTION]...