免费注册 查看新帖 |

Chinaunix

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

[学习分享] 新手求助,弄了很久没弄出来的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-06-05 22:36 |只看该作者 |倒序浏览
if [ id $1 ];then
  9    echo "user infomation output"
10    sed '/$1/w A.txt' /etc/passwd
11      
12 else
13    echo "no such user $1"
14 fi

电脑win10,vmware,opensuse 42.1
目的是想根据一个$1,然后判断是否存在,存在就输出他的用户信息到一个文件中;不存在就报告。但是运行以后提示这个错误:

./Info.sh: line 8: test: id: unary operator expected
no such user user1

我百度了一下, id那里改为  if [[ id $1 ]]   多加一个括号,但是还是报错:

./Info.sh: line 8: conditional binary operator expected
./Info.sh: line 8: syntax error near `$1'
./Info.sh: line 8: `if [[ id $1 ]];then'


改来改去还是错的,就告知一下方法。谢谢了

论坛徽章:
0
2 [报告]
发表于 2016-06-05 22:37 |只看该作者
求大家帮助一下   

论坛徽章:
9
操作系统版块每日发帖之星
日期:2016-01-08 06:20:00操作系统版块每日发帖之星
日期:2016-01-28 06:20:0015-16赛季CBA联赛之四川
日期:2016-05-17 17:50:32操作系统版块每日发帖之星
日期:2016-08-01 06:20:0015-16赛季CBA联赛之广东
日期:2016-08-01 16:01:57操作系统版块每日发帖之星
日期:2016-08-04 06:20:00IT运维版块每日发帖之星
日期:2016-08-07 06:20:00操作系统版块每日发帖之星
日期:2016-08-07 06:20:0015-16赛季CBA联赛之福建
日期:2017-03-07 17:14:27
3 [报告]
发表于 2016-06-06 16:33 |只看该作者
if id $1;then
...
...
fi

论坛徽章:
0
4 [报告]
发表于 2016-06-07 09:11 |只看该作者
这也太想当然了吧???[ id $1]就能判断出是否有$1这个用户???
#id $1 返回值是什么?[ ] 里有个是非的表达式吗??? 你所谓的[id $1 ] 只是在[]里面有一串字符,它都不知道你要判断什么!

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-06-16 06:20:00
5 [报告]
发表于 2016-06-13 13:01 |只看该作者
[root@localhost BZLinux]# cat id.sh
#!/bin/bash
PATH="/bin:/sbin:/usr/bin:/usr/sbin"
export PATH

if [ "$(id $1)" ]; then
        echo "user infomation output"
else
        echo "no such user $1"
fi

exit 0
[root@localhost BZLinux]# bash -x id.sh root
+ PATH=/bin:/sbin:/usr/bin:/usr/sbin
+ export PATH
++ id root
+ '[' 'uid=0(root) gid=0(root) groups=0(root)' ']'
+ echo 'user infomation output'
user infomation output
+ exit 0

------------------
[ id $1 ] 需要改为 $(id $1) ,而且需要两边加双引号
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP