我正在使用Ansible的shell模块来查找特定字符串并将其存储在变量中.但如果grep没有找到任何东西我会收到错误.
例:
- name: Get the http_status
shell: grep "http_status=" /var/httpd.txt
register: cmdln
check_mode: no
Run Code Online (Sandbox Code Playgroud)
当我运行这个Ansible playbook时,如果http_status没有字符串,则停止播放.我没有得到stderr.
即使找不到字符串,如何在不中断的情况下运行Ansible?
Perl允许预分配的数组.我们可以在使用前预先分配数组,然后我们可以添加更多元素.例如,分配50个阵列成员然后添加第51个成员,因为阵列是可扩展的.那么预分配数组会提高性能吗?
我有一个像这样的数组:
multi_arr = ["resi_spec","resi_desc"];
Run Code Online (Sandbox Code Playgroud)
所以每个数组值都被视为一个变量,我想动态地存储这些变量的一些值,如下所示:
resi_spec = "good morning"
resi_desc = "good evening";
Run Code Online (Sandbox Code Playgroud)
这样就可以将数组值转换为变量.这可能吗?
我不想像这样使用obj [resi_spec],如果我只是输入resi_spec意味着我使用数组不变量,我会早上好.
我写了一些面向对象的Perl,我使用了new关键字作为构造函数的名称.如果我改变new到car,它仍然有效.
new构造函数是否需要预定义关键字,或者您可以使用自己的构造函数名称吗?
我有像这样的perl编码
@arr = qw(1 2 3 4);
print $arr[0],"\n";
print @arr[0],"\n";
Run Code Online (Sandbox Code Playgroud)
两个输出答案都是1然后,有什么区别?内存存储有什么不同吗?
我有配置文件,我希望匹配特定的行,如"server.port = 5480".保留匹配的第一个删除休息匹配行.例
server.port=5480
server.port=5480
server.port=5480
ssl.engine = "enable"
ssl.use-sslv2 = "disable"
ssl.use-sslv3 = "disable"
ssl.cipher-list = "FIPS':' +3DES':'!aNULL"
ssl.engine = "enable"
ssl.use-sslv2 = "disable"
server.port=5480
server.port=5480
server.port=5480
server.port=5480
Run Code Online (Sandbox Code Playgroud)
期望的输出只有一行
server.port=5480
ssl.engine = "enable"
ssl.use-sslv2 = "disable"
ssl.use-sslv3 = "disable"
ssl.cipher-list = "FIPS':' +3DES':'!aNULL"
ssl.engine = "enable"
ssl.use-sslv2 = "disable"
Run Code Online (Sandbox Code Playgroud)
使用sed我想要这个和另外一个这不是序列行可能是变体