sed替换文件中的空格或tab键为指定的单分隔符
2019独角兽企业重金招聘Python工程师标准>>>
文章图片
#sed替换文件中的空格或tab键为指定的单分隔符
# 替换两个或多个空格为一个空格
sed 's/[ ][ ]*/ /g' file_name
# 替换两个或多个空格为分隔符:
sed 's/[ ][ ]*/:/g' file_name
如果空格与tab共存时用下面的命令进行替换
# 替换成空格
sed 's/[[:space:]][[:space:]]*/ /g' filename
# 替换成分隔符:
sed 's/[[:space:]][[:space:]]*/:/g' filename
一个使用的示例:
# 提取jpeglib.h文件中的JPEG_LIB_VERSION的定义版本号字符串
# 文件中的该行为: #define JPEG_LIB_VERSION62/* version 62 */
# 结果为 62
sed -n '/#define JPEG_LIB_VERSION/s/[[:space:]][[:space:]]*/ /gp' jpeglib.h |cut -d " " -f 3
sed重要注意事项
- sed支持正则表达式,空格的表示方法[[:space:]]
- 利用-i选项可以直接修改原来文件,不必生成新文件
- 为了引入shell变量,必须使用双引号(很重要)
- 例子sed -i "s/#server[[:space:]]$1/server $1/g" $2 将 server加若干空格加指定内容 前面的所有井号去掉
推荐阅读
- django-前后端交互
- 如何在Mac中的文件选择框中打开系统隐藏文件夹
- 使用composer自动加载类文件
- ssh生成公钥秘钥
- Android系统启动之init.rc文件解析过程
- 微信小程序基础知识
- 误删/清空.bashrc文件/内容
- JavaScript|vue 基于axios封装request接口请求——request.js文件
- 插件化无法获取或找到.so文件
- locate搜索