替换Shell字符串上的字符

时间:2014-11-18 13:21:02

标签: arrays shell unix

我目前正在Unix上制作一个连接4游戏。

我为电路板做了6个字符串数组,其中包含Array[0]="_ _ _ _ _ _ _"

现在的问题是,当玩家放置他的棋子时,我需要用_替换每个空格X

如果用户选择位置3,array[0]应该是:_ _ X _ _ _ _

有人能解释我怎么做吗?

2 个答案:

答案 0 :(得分:0)

您可以使用sed

$ r="_ _ _ _ _ _ _"
$ pos=3
$ echo "$r" | sed "s/_/X/$pos"
_ _ X _ _ _ _
$ pos=4
$ echo "$r" | sed "s/_/X/$pos"
_ _ _ X _ _ _

sed "s/_/X/N"您要用N替换_ X次{。}}。

答案 1 :(得分:0)

array[0]="_ _ _ _ _ _ _"
array[0]=${array[0]:0:4}X${array[0]:5}
echo ${array[0]}

输出:

_ _ X _ _ _ _