开发者社区> 问答> 正文

Ansible:如何使用Shell处理引号和空格

我正在创建一个剧本,以使用以下2.8.2版本上的剧本在“ / home”目录中列出用户:


- name: Check users in /home directory
  hosts: REDHAT
  tasks:
  - name: List users
      shell: cat /etc/passwd | grep "/home" |cut -d ":" -f1| tr '\n' ' '
      register: output
      ignore_errors: yes

我遇到的问题是在命令的结尾加上引号和空格: '\n' ' '

我尝试使用双引号,", {} and []但是我仍然有语法错误

我使用时的结果 ---syntax-check:

展开
收起
祖安文状元 2020-01-07 14:30:30 1457 0
1 条回答
写回答
取消 提交回答
  • Yaml是] JSON的严格超集,并添加了语法上重要的换行符和缩进,例如Python。但是,与Python不同,YAML不允许使用文字制表符来缩进。

    您的问题根本不是用引号引起的,而是shell任务中代码的缩进:

    2020-01-07 14:30:39
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Shell 脚本速查手册 立即下载
ANSIBLE在生产环境中的实践 立即下载
低代码开发师(初级)实战教程 立即下载