LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2064|回复: 19

花了一上午才发现的小毛病--注意``和''别混淆了

[复制链接]
发表于 2008-1-8 14:36:56 | 显示全部楼层 |阅读模式
没分清``和''的,应该不只我一个吧:)
在将awk返回的结果付给一个变量的时候,要用``,比如:
width_m=`awk '$1=="width:" {print $2 }'  $master_p`
刚开始打了''怎么也找不出问题。唉,菜鸟就要付出菜鸟的代价

还有1个获取目录名的问题,希望各位shell编程的前辈指点:
若当前目录名称为245-124,在bash中怎么获取它的名称,并把245赋给变量A;把124赋给变量B?即:

name="245-124"
A="245"
B="124"
发表于 2008-1-8 14:45:30 | 显示全部楼层
name="245-124"
a=(${name/-/ })

echo ${a[0]} = 245
echo ${a[1]} = 124
回复 支持 反对

使用道具 举报

发表于 2008-1-8 15:55:32 | 显示全部楼层
pwd |awk -F/ '{print $3}'
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-8 20:17:53 | 显示全部楼层
非常感谢lxmxn和iblicf的回复!
可能我没有把问题说清楚

我困惑的是怎么自动获取当前目录的名称,并把该目录名的前半部分赋给变量A,后半部分赋给变量B
比如目录名称为123-456,怎么把这个名称自动提取出来,然后赋值(A="123";B="123")?
谢谢!
回复 支持 反对

使用道具 举报

发表于 2008-1-8 20:33:16 | 显示全部楼层
晕死了~

A=${a[0]}
B=${a[1]}

就不会变通一下么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-8 20:52:55 | 显示全部楼层
....别晕别晕
我太菜了...:)我试试啊。谢谢lxmxn
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-8 21:20:59 | 显示全部楼层
成了,可是用 pwd |awk -F/ '{print $5}'获取当前目录名时,print后面的变量,要随着目录深度变化而变化。有没有通用方法?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-8 21:22:57 | 显示全部楼层
成了,可是用 pwd |awk -F/ '{print $5}'获取当前目录名时,print后面的变量,要随着目录深度变化而变化。有没有通用方法?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-1-8 21:25:30 | 显示全部楼层
成了,可是用 pwd |awk -F/ '{print $5}'获取当前目录名时,print后面的变量,要随着目录深度变化而变化。有没有通用方法?thx
回复 支持 反对

使用道具 举报

发表于 2008-1-8 23:33:08 | 显示全部楼层
dir=`pwd`
dir=${dir##*/}
回复 支持 反对

使用道具 举报

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

本版积分规则

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