免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 2038 | 回复: 21
打印 上一主题 下一主题

关于赋值 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-06-29 21:19 |只看该作者 |倒序浏览
一个目录下我执行ls -l * | wc -l,这个命令将输出一个数字,我想将这个数字输入到一个变量k
然后我在grep aa /home/file | wc -l 再输入到一个变量kk
然后如果这两个变量相等就做下面的任务
请问怎么实现?

论坛徽章:
0
2 [报告]
发表于 2003-06-29 23:37 |只看该作者

关于赋值

k=`ls -l |wc -l`
kk=`grep aa /home/file |wc -l`

if [ ${k} -eq ${kk} ];then
            echo 'k eq kk'
fi

论坛徽章:
0
3 [报告]
发表于 2003-06-29 23:39 |只看该作者

关于赋值

我本来就是按照你那个方式执行的
但是不行
k=`ls -l |wc -l`
输出的竟然是那些文件.....
我用的是hp unix

论坛徽章:
0
4 [报告]
发表于 2003-06-29 23:43 |只看该作者

关于赋值

hp不清楚
命令行上执行ls -l |wc -l 也是文件...?

论坛徽章:
0
5 [报告]
发表于 2003-06-29 23:46 |只看该作者

关于赋值

在命令行上执行是得到的数字
但是在shell里
k='ls -l * | wc -l'
得到就是ls -l ab b c pd.txt | wc -l
是把文件给列出来了
好象是语句有问题吧
这个语句好象是k='ls -l * | wc -l'这句话,而不是等于这行命令的结果!

论坛徽章:
0
6 [报告]
发表于 2003-06-29 23:49 |只看该作者

关于赋值

你是要
ls -l *
还是
ls -l

两个命令不一样哦   ,不过都应该是数字才对啊

论坛徽章:
0
7 [报告]
发表于 2003-06-29 23:51 |只看该作者

关于赋值

如果是ls -l |wc -l得到的数字会比实际文件数多一个
因为开头会有特total XXX
所以ls -l * |wc -l 就会得到真正的文件数.......

论坛徽章:
0
8 [报告]
发表于 2003-06-29 23:54 |只看该作者

关于赋值

用ls -l *的话:
如果当前目录下还有目录不是连子目录里的文件也算进去了?

论坛徽章:
0
9 [报告]
发表于 2003-06-29 23:56 |只看该作者

关于赋值

是会算进去的,但是我要写的shell目录下都是文件,不会在存在目录!
呵呵,不过有什么办法可以真正的算出这个目录下的文件嘛?(不包括)目录!

论坛徽章:
0
10 [报告]
发表于 2003-06-29 23:57 |只看该作者

关于赋值

echo * |wc -w
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP