我正在尝试为只匹配有效域的grep创建一个正则表达式.
我的版本工作得很好,但匹配以下无效域:
@subdom..dom.ext
Run Code Online (Sandbox Code Playgroud)
这是我的正则表达式:
echo "@dom.ext" | grep "^@[[:alnum:]]\+[[:alnum:]\-\.]\+[[:alnum:]]\+\.[[:alpha:]]\+\$"
Run Code Online (Sandbox Code Playgroud)
我正在使用bash,所以我逃脱了特殊字符.
应匹配的示例:
@subdom.dom.ext
@subsubdom.subdom.dom.ext
@subsub-dom.sub-dom.ext
Run Code Online (Sandbox Code Playgroud)
感谢帮助
我有一些困难使Ansible配置适应我的环境.
我的测试环境:
我的ansible主机库存如下所示:
[servers]
server1 ansible_ssh_host=192.168.0.1 ansible_sudo=true ansible_ssh_user=foo ansible_sudo_user=bar
Run Code Online (Sandbox Code Playgroud)
我有一个用于foo用户的SSH密钥.
当我使用条形码密码尝试这个ad hoc命令(或任何其他命令)时:
ansible server1 -m raw -a "echo test > /etc/testfile" --ask-sudo-pass
server1 | FAILED => Incorrect sudo password
Run Code Online (Sandbox Code Playgroud)
然后,如果我使用foo密码执行相同的命令:
ansible server1 -m raw -a "echo test > /etc/testfile" --ask-sudo-pass
Sorry, user foo is not allowed to execute '/bin/bash -c echo SUDO-SUCCESS-rlpfhamukjnsfyokqbjpbttviiuildif; echo test > /etc/testfile' as bar on server1.
Run Code Online (Sandbox Code Playgroud)
所以Ansible肯定使用foo作为sudo用户而不是我指定的bar.有没有办法强制使用bar而不是foo?我真的不明白Ansible上的sudo功能,即使我使用相同的用户一切(SSH和条形码密码)ansible给我回报:
server1 | FAILED | rc=1 >>
echo test > /etc/testfile : Permission denied
Run Code Online (Sandbox Code Playgroud)
当我在主机上记录为条形并执行"sudo echo …
即使密码失败,mysqladmin ping也会返回0,这是mysqlclient没有的.这是Mysqladmin Developpers的错误吗?我不明白为什么Mysqladmin要求登录/密码,因为即使你没有指定登录,它也会返回0.
如果我尝试没有任何登录名/密码的Mysqladmin ping:
# mysqladmin ping ; echo $? mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: NO)' 0
Mysqladmin给我一个登录错误并告诉我服务器当前正在运行(0值)所以为什么要求登录,如果它仍然给我答案?
当我做这样的事情时:
#mysqladmin -uroot -pWrongPassword ping ; echo $? mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: YES)' 0
这使我返回0而不是1.
现在,如果我停止mysql服务器并再试一次:
# mysqladmin -uroot -pWrongPassword ping ; echo $? mysqladmin: connect to server at 'localhost' failed error: 'Can't connect to local MySQL server through socket …