ed,是一个行编辑器的名字,我居然今天才听说。一直以来,只会使用vim/vi编辑器。
在Shell Programming in Unix Linux and OS X这本书中第三章读到这个编辑的使用方法,真的感觉到很头疼。有位牛人说,它是“有屎以来最虐人的编辑器”(the most user-hostile editor ever created)。
Ken Thompson,大神
Unix操作系统的作者Ken Thompson于1971年8月发布ed的第一个版本,是Unix操作系统三个最基础的组件。哪三个组件?编译器、编辑器和shell。
谁还会用这玩意啊?shell编程的时候要使用。听说,在所有东西都不行了的时候,这个编辑器可能会救你一命。据说,在不指定编辑器的情况下,Oracle的SQL*Plus就使用ed。
你要是弄错了,ed只会显示一个“?”。
ed test.txt
//用ed打开一个文件,它会只会显示一个数字,即该文档中的字符数
上图中,我在每一行前面添加4个空格。在交互模式下,输入下面的命令:
1,$s/^/ /
必须具备一定的正则表达式(regex)知识,才能操作。
- “1,$”限定范围,从第1个字符到最后一个字符
- s,substitue,替换
- p,print,显示
- g,有多少个,就操作多少次