sed实现路径替换
shell和sed忘得差不多了,现在更喜欢用python notebook,可以自动补充,所以很方便。但是记得以前用过这个的,试了几次不成功,搜了一下,这几个地方给的比较清晰,尤其是路径替换。
以下内容均为转载。
http://www.cnblogs.com/aaronwxb/archive/2011/08/19/2145364.html
用sed命令在行首或行尾添加字符的命令有以下几种:
假设处理的文本为test.file
在每行的头添加字符,比如"HEAD",命令如下:
sed 's/^/HEAD&/g' test.file
在每行的行尾添加字符,比如“TAIL”,命令如下:
sed 's/$/&TAIL/g' test.file
转载地址:https://my.oschina.net/SmileWolf/blog/100269
写脚本,要实现文件覆盖。比如,有一个文件/home/a/1.xml,想/home/b目录下,如果b目录下存在同名文件就覆盖。可以这样写脚本:
#!/bin/sh SRC_PATH=/home/a
DST_PATH=/home/b src_file=${SRC_PATH}/1.xml
dst_file=`echo ${src_file} | sed "s:${SRC_PATH}:${DST_PATH}:g"` cp -f ${src_file} ${dst_file}
当然了,也可以用dirname和basename实现,用这个小例子主要是为了实验sed的用法。
一般情况下,sed 's/pattern/pattern/flag' 是用/来进行分隔的。但这里的源字符串和替换字符串中,都带有字符/,如果再用/进行分隔,就会产生冲突。所以,改用了:进行分隔。
sed实现路径替换的更多相关文章
- Gulp学习指南之CSS合并、压缩与MD5命名及路径替换(转载)
本文转载自: Gulp学习指南之CSS合并.压缩与MD5命名及路径替换
- linux中sed中用s 替换中遇到的问题
sed替换时候不能用-n,只输出替换的行,为什么???? 比如: sed "2,4s/\"//g" /var/lib/status #可以输出 但是: sed - ...
- 基于webpack实现多html页面开发框架三 图片等文件路径替换、并输出到打包目录
一.解决什么问题 1.图片路径替换.并输出到打包目录 2.输出目录清理 二.需要安装的包 file-loader:html.css中图片路径替换,图片输出到打包目录:命令:npm ...
- Linux sed -i 字符串替换
sed -i 直接替换文件中的内容不输出, 如 将 laravel .env中的 QUEUE_DRIVER=sync 替换为 QUEUE_DRIVER=redis, 在Laravel的项目根目录中运行 ...
- Sed+Grep 快速替换查找字段(批量替换字符串)
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl路径` 命令分解: grep 查找字段 -rl路径 列出”路径”中” 查找字段” 的所有文件 ...
- Linux sed 命令字符串替换使用方法详解
1. sed替换的基本语法 sed 's/原字符串/替换字符串/' 单引号里面,s表示替换,三根斜线中间是替换的样式,特殊字符需要使用反斜线”\”进行转义.2. 单引号” ‘ ’”是没有办法用反斜线” ...
- 使用sed进行文字替换
范式: sed -i "s/查找内容/替换后内容/g" `grep 查找内容 -rl 查找开始路径` 例子: #sed -i "s/abc/ABC/g" `gr ...
- Linux sed命令实现替换文本内容
/root/data/code-s3201/publish_codex/deploy/db.properties db.properties中的 1.0.0.6 替换为 1.0.0.7 sed -i ...
- sed(查找替换) 与awk(提取字段)
通常: sed 处理列 awk处理行 比较方便 Sed是一个基本的查找替换程序 sed -i "s/^@//g" 文件 #原地操作原文件,进行替换 cat ...
随机推荐
- CTSC/APIO2018 游记
狗牌滚粗选手,此博客证明我去过...... CTSC 消失的源代码与消失的分数...... 我也不知道发生了什么....... APIO 旁边两位小哥太强了,心态完全炸裂,最后也滚粗了...... 回 ...
- link快捷方式
ln -s 源文件 newfile -软连接 ln 源文件 newfile 硬链接 源文件删除之后仍然可以使用
- MySQL 查询多张表中相同字段的最大值
MySql : 有N张表,N未知,每张表都有一个字段(id),每张表的字段结构不完全一样,如何查询所有表里面所有id的最大值?如下图所示: 对上面三张表进行操作的话,结果应该为:9 SQL语句: se ...
- 关于Java中用Double型运算时精度丢失的问题
注:转自 https://blog.csdn.net/bleach_kids/article/details/49129943 在使用Java,double 进行运算时,经常出现精度丢失的问题,总是在 ...
- 【Linux】安装配置JDK1.8
第一步:下载Linux环境下的jdk1.8,请去(官网)中下载jdk的安装文件: https://www.oracle.com/technetwork/java/javase/downloads/in ...
- PAT 1021 Deepest Root
#include <cstdio> #include <cstdlib> #include <vector> using namespace std; class ...
- Linux 套接字编程 - TCP连接基础
第五章的内容,实现一个echo服务器和对应的客户端,主要收获: 0. TCP socket编程主要基本步骤 1. SIGCHLD信号含义(子进程退出时向父进程发送,提醒父进程对其状态信息进行一个获取) ...
- django内置组件——ContentTypes
一.什么是Django ContentTypes? Django ContentTypes是由Django框架提供的一个核心功能,它对当前项目中所有基于Django驱动的model提供了更高层次的抽象 ...
- caffe-windows之手写体数字识别例程mnist
caffe-windows之手写体数字识别例程mnist 一.训练测试网络模型 1.准备数据 Caffe不是直接处理原始数据的,而是由预处理程序将原始数据变换存储为LMDB格式,这种方式可以保持较高的 ...
- angular2-模板驱动表单
app.module.ts 导入 FormsModule import { NgModule } from '@angular/core'; import { BrowserModule } fro ...