sed命令在文件头部插入文本---BSD和GNU版本通用写法
为什么80%的码农都做不了架构师?>>>
sed BSD和GNU通用文件头部插入文本写法
sed可以迅速在文件头部插入文本,BSD的sed和GNU Linux的版本并不一样,GNU Linux下
sed -i '' -e '1i Hello World.' test.txt
以上命令会在test.txt文件头部插入一行 Hello World.
1i中的数字1代表第一行,i为insert的缩写
i后的空格会被忽略,插入文本后,会自动添加一个换行符 "\n"
如果不添加-e选项,经过测试,也可以正常运行,只是在BSD下不会自动添加换行符,
而在GNULinux下却会始终添加一个换行符,所以统一添加上-e选项
sed 后面的 -i '' 表示不生成备份文件,直接在当前文件上做修改。
这条命令在Mac OS X下运行会失败,除非你已经使用GNU的sed替换了系统的内置sed,
FreeBSD下也一样,经过反复测试,得出BSD版本的sed需要使用下面的办法
sed -i '' -e '1i \
Hello World.' test.txt
即在1i后加入空格在加入一个反斜杠 \ ,回车后 另起一行,在下一行输入要插入的内容,以单引号结束,后面跟文件名
可以正常运行。
这样的命令在GNU版本下的sed同样可以正常运行。
因此,为方便程序移植,可以统一写出第二种格式。
转载于:https://my.oschina.net/jsk/blog/166974
sed命令在文件头部插入文本---BSD和GNU版本通用写法相关推荐
- linux sed替换文件,linux的sed命令替换文件
linux下的sed是一个强大的编辑器工具,下面由学习啦小编为大家整理了linux的sed命令替换文件的相关知识,希望对大家有帮助! linux的sed命令替换文件 sed在Linux下是个强大的工具 ...
- sed删除以什么开头的内容_使用 sed 命令删除文件中的行
原标题:使用 sed 命令删除文件中的行 Sed 代表流编辑器 Stream Editor ,常用于 Linux 中基本的文本处理.sed 命令是 Linux 中的重要命令之一,在文件处理方面有着重要 ...
- Linux使用sed命令删除文件中指定内容
因为日志文件太大,希望删除过早的一部分日志,虽然可以用vi或vim打开后删除,但是因为文件很大,打开就很耗时. 因此打算使用sed命令,在不打开文件的情况下删除,但是删除后需要把内容存入一个新文件中, ...
- sed删除以什么开头的内容_技术|如何使用 sed 命令删除文件中的行
Sed 代表流编辑器Stream Editor,常用于 Linux 中基本的文本处理.sed 命令是 Linux 中的重要命令之一,在文件处理方面有着重要作用.可用于删除或移动与给定模式匹配的特定行. ...
- Linux miny选择字体,linux下sed命令对文件执行文本替换
让我们看一下 sed 最有用的命令之一,替换命令.使用该命令,可以将特定字符串或匹配的规则表达式用另一个字符串替换.下面是该命令最基本用法的示例: $ sed -e 's/foo/bar/' myfi ...
- linux下命令行的使用:使用sed命令操作文件
用该命令sed删除文件test.txt中包含某个字符串abc的行: sed '/adc/d' test.txt >result.txt 在文件test.txt中删除从开头到含有某个字符串abc的 ...
- 在shell脚本中使用sed命令更改文件中两个相似参数的其中一个
文件中含有两段数据,第一段是mysql1的配置,第二段是mysql2的配置. [root@ip-10-40-18-118 szh]# cat test.txt mysql1:host: 1.1.1.1 ...
- sed命令对文件内的指定字符串进行替换
目录 一.创建一个txt文件 二.替换每行第一个huawei为apple,第三个"/"后,不加参数就是只替换第一个 三.替换每行所有的xiaomi为iphone,第三个" ...
- linux sed给空文件首行插入_Linux系统中sed命令在文件某行前后添加内容的用法
linux的sed工具是十分强大的,能很容易的实现在某关键词的前一行或后一行增加内容.今天在批量修改tomcat的日志时就用到了该功能. 一.在某行的前一行或后一行添加内容 具休操作如下: 复制代码 ...
最新文章
- Styling with the DataGridColumnStyle
- 2017乌鲁木齐区域赛I(带权并查集)
- php的v_PHPV是什么意思
- 「镁客·请讲」摩簦伞易新宇:对共享雨伞的不同理解,让他们玩法也和他人不同...
- Android+Eclipse修改包路径
- Kubernetes List-Watch
- find: paths must precede expression(转)
- 亲自己主动手从源代码 构建 Groovy 2.3.8 公布包
- oracle监听无法启动常用解决办法
- 资源共享型智能指针实现方式
- post和get传值
- 设置axios默认访问前缀
- Oracle的sql开发之包技术实战
- 集成学习——LightGBM原理理解
- 如何正确使用日志Log
- Multisim 13.0.1 安装教程
- 网站标签页如何添加左边的小图标
- Automate your Android app testing
- Excel表格多个工作表数据汇总求和
- lstm需要优化的参数_通过Keras 构建基于 LSTM 模型的故事生成器