QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1079|回复: 10

编写shell脚本的问题

[复制链接]
发表于 2005-8-5 19:40:45 | 显示全部楼层 |阅读模式
我从shell脚本中得到目录名,例如:/usr/local/aa/bb/cc
现在要把这个目录名中的cc提取出来,不知道用什么命令?
发表于 2005-8-6 01:28:12 | 显示全部楼层
echo  "/usr/local/aa/bb/cc" | cut -b 18-
上面可以土土的搞定,下面是用gawk的方法
echo  "/usr/local/aa/bb/cc" | gawk -F"/" '{print $6}'
回复

使用道具 举报

发表于 2005-8-6 09:34:39 | 显示全部楼层
用basename这个命令就可以得到了
回复

使用道具 举报

发表于 2005-8-7 13:06:37 | 显示全部楼层
[victor@localhost ~]$ a="/usr/local/aa/bb/cc"
[victor@localhost ~]$ echo ${a##*/}
cc
[victor@localhost ~]$
回复

使用道具 举报

发表于 2005-8-7 14:34:09 | 显示全部楼层
[quote:0029301de5="twf_cc"][victor@localhost ~]$ a="/usr/local/aa/bb/cc"
[victor@localhost ~]$ echo ${a##*/}
cc
[victor@localhost ~]$[/quote]
why not use this method :
[code:1]
$ a="/usr/local/aa/bb/cc"
$ basename $a
[/code:1]
回复

使用道具 举报

发表于 2005-8-9 21:32:42 | 显示全部楼层
[quote:b53d73efdd="VimChina"][quote:b53d73efdd="twf_cc"][victor@localhost ~]$ a="/usr/local/aa/bb/cc"
[victor@localhost ~]$ echo ${a##*/}
cc
[victor@localhost ~]$[/quote]
why not use this method :
[code:1]
$ a="/usr/local/aa/bb/cc"
$ basename $a
[/code:1][/quote]

因為是內建 bash 命令,快得多。
回复

使用道具 举报

发表于 2005-8-9 21:43:27 | 显示全部楼层
[quote:8890713e77="twf_cc"][quote:8890713e77="VimChina"][quote:8890713e77="twf_cc"][victor@localhost ~]$ a="/usr/local/aa/bb/cc"
[victor@localhost ~]$ echo ${a##*/}
cc
[victor@localhost ~]$[/quote]
why not use this method :
[code:1]
$ a="/usr/local/aa/bb/cc"
$ basename $a
[/code:1][/quote]

因為是內建 bash 命令,快得多。[/quote]
看看哪个更简洁,便于阅读和理解,所以我更喜欢用basename
回复

使用道具 举报

发表于 2005-8-10 08:27:54 | 显示全部楼层
basename is enough
回复

使用道具 举报

发表于 2005-8-10 09:53:51 | 显示全部楼层
比较直接
回复

使用道具 举报

 楼主| 发表于 2005-8-10 14:01:37 | 显示全部楼层
谢谢各位
回复

使用道具 举报

发表于 2005-8-15 03:52:21 | 显示全部楼层
[hahal@localhost ~]$ a="/usr/local/aa/bb/cc"

用字符串操作命令:basename $a 可提取cc;剩下的部分可以用dirname  $a 提取 。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-10-4 16:51 , Processed in 0.041252 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表