shell - 如何在 vim 的一行中替换特定索引处的字符?

标签 shell vim replace sed

我需要使用 vim/sed/awk 等替换文件中某些特定行的特定索引中的字符(可以是 X、L、H、1、0)。

例如:

文件:

0101010HLHLHLHL
1010100LHHHLHLH
1000000HHLLHHLL
LHLHLHLHLLLLHLH

所以我需要将第 2 行中的第 8 个字符替换为 X

0101010HLHLHLHL
1010100XHHHLHLH
1000000HHLLHHLL
LHLHLHLHLLLLHLH

最佳答案

你可以使用这个sed:

sed '2s/./X/8' file

使用 -i 选项进行就地编辑。

这里,

  • 2 - 行号
  • s/./X/8 - 将任何字符 .(匹配任何一个字符)替换为 X8th 仅出现。

关于shell - 如何在 vim 的一行中替换特定索引处的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37161467/

相关文章:

linux - 我在使用 Sed 时遇到问题

bash - 如何使用 tput 覆盖 read 打印的一行

Linux shell 计算 key 的简单方法

linux - 如何在没有-ne的情况下在同一行上显示多个 echo ?

vim - 使用非英文键盘在 Vim 上写得更快的最佳方法是什么?

javascript - 替换文本功能在资源管理器中不起作用

python - Jenkins Remote API 是否支持在 View 内运行所有作业?

vim:转义字符串以进行替换(vimscript)

python - Python 的 .vimrc 配置

PHP 用链接分隔逗号列表