我想在特定列的echo命令中移动bash光标,但不更改该行。到目前为止我所拥有的是:
this.echo('NONE found on ' + accountName + '(' + accountPos + ')' + '\033[30f !!!');
我希望30是列号,但是要保持相同的行,但出于某种原因,上面只是认为我的行号是0,因此它将行重置为该值。
答案 0 :(得分:-1)
找到我自己问题的答案,方法是将光标移动到行的开头,然后向前移动30列,如下例所示:
\033[50D\033[30C My Text Goes Here
答案 1 :(得分:-1)
下面是如何使用bash shell(即终端)中的vi文本编辑器在bash脚本中移动光标或确定光标在bash脚本(或任何文本文件)中的当前位置的说明。
首先,您需要使用vi编辑器打开bash脚本(或任何文本文件)。
vi bashscript.sh
如果要使用vi编辑器将光标移动到bash脚本中的第10行和第2列,请运行以下命令(注意您键入':'以输入命令)。
:cal cursor(10, 2)
如果要使用vi编辑器在bash脚本中查看当前行和列,请运行以下命令。
:echo "Row = " line('.') ", Col = " virtcol('.')
答案 2 :(得分:-2)
有多种方式,但最简单的方法是 HPA
(请参阅XTerm Control Sequences):
CSI Pm ` Character Position Absolute [column] (default = [row,1])
(HPA).
例如
printf '\033[30`%s\n' "My Text Goes Here"