【发布时间】:2016-11-23 06:47:27
【问题描述】:
我写了一个简单的测试脚本,代码如下
#!/bin/bash
CHM=test
NAME="user@test"
if ! grep -q test /etc/passwd
then
useradd -s /bin/bash -m -d /home/test -c "${CHM} : ${NAME}" test
fi
但我在 bash 将我的 " 转换为 ' 示例输出时遇到问题
+ CHM=test
+ NAME=user@test
+ grep -q test /etc/passwd
+ useradd -s /bin/bash -m -d /home/test -c 'test : user@test' test
useradd: invalid comment 'test : user@test'
我不知道如何解决这个问题欢迎任何输入,尝试搜索但没有产生任何首选结果
操作系统:RHEL6 GNU bash,版本 4.1.2(1)-release (x86_64-redhat-linux-gnu 谢谢
【问题讨论】:
-
您的要求是什么?您希望如何添加名称?
-
如果你看到输出 useradd 命令将不接受 -c 'text' 它只接受 -c "text"
-
无法在 Ubuntu 上重现。这是哪个操作系统?
-
我正在使用 redhat 6,bash 版本 GNU bash,版本 4.1.2(1)-release (x86_64-redhat-linux-gnu
-
@Inian 尝试一下,但它也会导致语法不正确: + useradd -s /bin/bash -m -d /home/test -c '"test' : 'user@test"' test