实例讲解3--sed命令f

69 篇文章 0 订阅

21.sed提取最后一个目录名和程序名

例如从../../etc/passwd或者/etc/passwd得到passwd

方法一:使用临时文件

#得到当前路径,输出到a文件

      pwd >a

      #读取a文件,过滤首字母/和尾字母/,将结果输出到b文件

sed's/^\///g' a  | sed ‘s/\/$//g’ >b

    while fgrep \/ b

do

#读取b文件,过滤首字符串xxxx/,将结果输出到a文件

sed's/^[a-zA-Z0-9]*\///g' b >a

#将a文件拷贝到b文件

    cp -f a b

done

rm –f a

rm –f b

 

方法二:使用变量(优于文件形式)

           c_path=`pwd`

           #过滤首字母/和尾字母/

c_path=`echo $c_path | sed 's/^\///g'  | sed ‘s/\/$//g’ `

while [ `echo$c_path | grep -c '\/'` -gt 0  ]

do

c_path=`echo $c_path | sed 's/^[a-zA-Z0-9_.]*\///g'`

done

echo$cur_path

方法三:使用basename命令

           c_path=`pwd`

           c_path=`basename $c_path`

       注:参数扩展见五.5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值