- name : Execute the script and answer to question in term
expect:
command: ./"{{ script_name }}"
responses:
Question:
- ''
- ''
- ''
- 'backspace' #?
become: yes
我想使用退格键,因为我使用的脚本是预先回答的,所以如果我还可以的话,我只需要按Enter键,但是对于一个问题,我想更改给定的答案。但是到目前为止,我还没有找到使用退格键的方法。有人会知道吗?
答案 0 :(得分:2)
退格的ASCII控件为'\b'
。这适用于双引号:
- name : Execute the script and answer to question in term
expect:
command: "echo Q"
echo: "yes"
responses:
Q: "b\bc"
例如,将打印返回到标准输出1^Hc
,其中^H
实际上是退格控件。
这只能使光标向后移动,而不能删除前一个字符。例如,在我的bash shell中:
/bin/bash -c "echo a$'\b'"
产生a
作为输出,但是
/bin/bash -c "echo a$'\b'c"
产生c
,因为光标被移回了a
,所以被覆盖了。