sed 修连接文件,有坑

sed编辑器之修改行 阅读详情

-bash-4.1# ll /etc/rc.local 
lrwxrwxrwx. 1 root root 13 Aug 15  2014 /etc/rc.local -> rc.d/rc.local
-bash-4.1# cat /etc/rc.local 
#!/bin/sh
touch /var/lock/subsys/local
route add default gw 192.169.1.1
service iptables stop
echo "hosfore test line"
</pre><pre code_snippet_id="684937" snippet_file_name="blog_20150605_4_1032646" name="code" class="cpp" style="color: rgb(68, 68, 68);">-bash-4.1# sed -i "/hosfore/s//jane/" /etc/rc.local 
-bash-4.1# cat /etc/rc.local 
#!/bin/sh
touch /var/lock/subsys/local
route add default gw 192.169.1.1
service iptables stop
echo "jane test line"
</pre><pre code_snippet_id="684937" snippet_file_name="blog_20150605_6_4535175" name="code" class="cpp"><span style="color:#ff0000;">-bash-4.1# ll /etc/rc.local 
-rwxr-xr-x 1 root root 300 Jun  5 09:47 /etc/rc.local

-bash-4.1# cat /etc/rc.d/rc.local 
#!/bin/sh
touch /var/lock/subsys/local
route add default gw 192.169.1.1
service iptables stop
echo "hosfore test line"</span>
</pre><pre code_snippet_id="684937" snippet_file_name="blog_20150605_8_4167031" name="code" class="cpp">-bash-4.1# rm /etc/rc.local 
-bash-4.1# ln -s /etc/rc.d/rc.local /etc/rc.local
-bash-4.1# ll /etc/rc.local 
lrwxrwxrwx 1 root root 18 Jun  5 09:51 /etc/rc.local -> /etc/rc.d/rc.local
-bash-4.1# cat /etc/rc.local 
#!/bin/sh
touch /var/lock/subsys/local
route add default gw 192.169.1.1
service iptables stop
echo "hosfore test line" 
-bash-4.1# sed -i <strong>--follow-symlinks</strong> "/hosfore/s//jane/" /etc/rc.local
-bash-4.1# ll /etc/rc.local 
lrwxrwxrwx 1 root root 18 Jun  5 09:51 /etc/rc.local -> /etc/rc.d/rc.local
-bash-4.1# cat /etc/rc.d/rc.local 
#!/bin/sh
touch /var/lock/subsys/local
route add default gw 192.169.1.1
service iptables stop
echo "jane test line"

如上所示,使用“sed -i "/hosfore/s//jane/" /etc/rc.local ”命令修改文件之后,发现这个文件变成普通文件了 ,查询sed的使用手册,可知,如果需要保持软硬链接属性,修改的时候需要加上对应参数:

man sed

DESCRIPTION
       Sed  is  a  stream editor.  A stream editor is used to perform basic text transformations on an input stream (a file or input from a pipeline).  While in some ways similar to an editor which permits scripted edits (such as ed), sed works by making only one pass over the input(s), and is consequently more efficient.  But it is sed's ability to filter text in a pipeline which particularly distinguishes it from other types of editors.

       --follow-symlinks

            follow symlinks when processing in place; hard links will still be broken.

       -i [SUFFIX], --in-place[=SUFFIX]

            edit  files in place (makes backup if extension supplied).  The default operation mode is to break symbolic and hard links.  This can be changed with --follow-symlinks and --copy.

       -c, --copy

            use copy instead of rename when shuffling files in -i mode.  While this will avoid breaking links (symbolic or hard), the resulting editing operation is not atomic.  This is rarely the desired mode; --follow-symlinks is usually enough, and it is both faster and more secure.

Autosar MCAL-S32k324 Crypto配置-基于EB NXP官网提供了免费的HSE固件,同时也提供了对应的协议栈。本文以算法为例,介绍MCAL相关的配置及在代码中的集成与使用。使用HSE计算,比软件算法确实方便许多。后面会完善更多的算法测试。 阅读详情

相关推荐

从零到一:树莓派上的YOLO目标检测实战指南

本文详细介绍了如何在树莓派上部署和优化YOLO目标检测模型,从硬件选型到系统配置,再到模型转换与推理优化。通过对比不同树莓派型号的性能差异,提供实用的配置方案和代码示例,帮助开发者快速实现高效的边缘计算视觉系统。特别推荐使用ONNX格式进行模型转换,以提升在树莓派上的推理效率。

weixin_29046035的博客 1063

sed修改软链接文件的坑

随手记一笔。太长不看版: sed修改软链接文件时,会将文件从链接变成真实文件,如果依然保持链接的状态,需要加参数--follow-symlinks,但需要注意旧版本的sed不支持这个参数。详细:前一阵有同事问,他通过命令: sed -i '$a sh /bin/iptables.sh' /etc/rc.local来修改了/etc/rc.local,但发现机器重启后,iptables.sh并没有运行...

Liv2005的专栏 3809

R语言笔记十:独立性检验函数

1.独立性检验函数        独立性检验是根据频数信息判断两类因子彼此相关或相互独立的假设检验。所谓独立性就是指变量之间是独立的,没有关系。 独立性检验算法:卡方检验、Fisher检验、Cochran-Mantel-Haenszel检验 2.假设检验 假设检验(Hypothesis Testing)是数理统计学中根据一定假设条件由样本推断总体的一种方法。 原假设——没有发生 备择假设——发生了 具体做法:根据问题的需要对所研究的总体作

weixin_44384631的博客 4111

sed入门介绍

一、sed工作原理概述   原理这东西本身是说的越简单越好,可是发现自己无法用简单精辟的语言来描绘,于是借用一下官方的描述并对其进行的简要字面的意译: 原文: sed maintains two data buffers: the active pattern space, and the auxiliary hold space. Both are initially empty. sed o...

u012271055的专栏 770

电机FOC控制实战:STM32 CubeMX配置六路互补PWM与死区优化

本文详细介绍了如何使用STM32 CubeMX配置六路互补PWM与死区优化,实现电机FOC控制。通过实战经验分享,包括时钟配置、定时器设置、死区时间计算及优化技巧,帮助开发者避免常见问题,提升电机控制性能。特别适用于STM32G4系列的无刷电机驱动应用。

weixin_29193259的博客 402

避坑指南:将大华官方Java SDK无缝迁移到SpringBoot 2.x项目的完整流程

本文详细介绍了如何将大华官方Java SDK无缝迁移到SpringBoot 2.x项目,重点解决内存管理、连接池设计和异步处理等核心问题。通过设备连接池化、异步非阻塞接口改造和内存管理优化,实现刷卡、刷脸等认证功能的高效整合,提升Web服务的稳定性和性能。

weixin_42557830的博客 416

sed -i修改链接文件注意问题

因为sed -i /etc/sysconfig/selinux(selinux文件是/etc/selinux/config的软链接)配置文件重启SELINUX没有关闭,才发现原来sed -i是不能直接修改软链接文件的,如下我修改之后的后果: [root@node1 ~]# ll /etc/sysconfig/selinux lrwxrwxrwx. 1 root root 19 2月 20

枯木的Linux专栏 7439

计算机组成原理(二)—— 数据的表示与运算

本章目录引言一、数制与编码1.1 进位计数制1.1.1 进制及转换1.1.2 真值、机器数1.2 BCD码1.3 ASCII 码1.4 校验码1.4.1 奇偶校验码1.4.2 海明码1.4.3 CRC循环冗余码二、定点数的表示和运算2.1 定点数的表示2.1.1 无符号2.1.2 有符号(原码、反码、补码、移码)2.2 定点数的运算2.2.1 移位运算2.2.2 加减运算(溢出判断)2.2.3 乘法运算2.2.4 除法运算2.3 强制类型转换2.4 数据的存储和排列三、浮点数的表示和运算3.1 浮点数的表示

S mile0804的博客 7473

Linux下sed命令使用二三事

sed命令的-i选项作用是让用户直接修改源文件,例如有一个十万行的文本文件,如果用vim修改可能会比较麻烦,这个时候通过sed修改即可 但-i选项会带来一个问题,就是会破坏软链接和硬链接 sed -h查看sed各选项的作用,可以看到--follow-symlinks和-c两个选项(旧版本的sed可能没有-c),其中--follow-symlinks选项只对软链接起作用,即还是会破坏硬链

fishwang89 1068

C# & SQL Server 实时数据同步:7步轻松搞定,代码详解

实时数据同步是指在一个数据库中的数据发生变化时,能够立即或近乎立即地将这些变化同步到另一个数据库中。这种同步可以是单向的(从源数据库同步到目标数据库),也可以是双向的(两个数据库互相同步)。通过本文的详细讲解和代码示例,相信你已经学会了如何使用C#和SQL Server实现数据库的实时数据同步。实时数据同步不仅可以提升系统的响应速度,还能确保数据的一致性和准确性。希望这篇教程对你有所帮助,期待你在C#编程中取得更大的成就!🌟✨如果你有任何问题或建议,欢迎在评论区留言交流!

java专栏 514

C#跨平台制图新纪元:Mapsui,一库在手,地图我有

深入学习Mapsui的渲染机制,定制属于你的地图样式,无论是颜色、图标还是文字,都可以随心所欲。

java专栏 1455

修改链接文件 linux,sed 替换、修改链接文件注意问题

sed 替换、修改链接文件注意问题#系统与版本[root@localhost ~]# cat /etc/redhat-releaseCentOS release 6.8 (Final)[root@localhost ~]# sed --versionGNU sed version 4.2.1Copyright (C) 2009 Free Software Foundation, Inc.This ...

weixin_35599933的博客 535

零件边界线提取处理原理详解

该程序提出了一种高效的点云边界提取方法,通过三阶段处理流程实现零件几何特征的精确提取。首先采用RANSAC算法进行坐标系标准化,包括主平面检测、点云分割和双重旋转对齐。接着使用凹包算法和RANSAC直线拟合提取底面边界。最后通过多方向密度切片分析(Z向100片、X向50片),自动选择高密度切片进行边界提取和直线拟合。算法具有鲁棒性强、处理效率高(支持OpenMP并行计算)和参数可配置等特点,能有效提取零件的几何边界特征,为后续质量检测提供基础。实验结果显示该方法能准确提取零件的多方向边界线。

weixin_45196569的博客 432

【Linux系列】sed命令的深入解析:如何使用sed删除文件内容

sed命令的名称来源于“stream editor”,即流编辑器,它能够处理来自标准输入的数据流,并将结果输出到标准输出。这意味着sed可以处理来自文件、管道或直接输入的文本数据。sed。

优快云站内信: https://i.youkuaiyun.com/#/msg/chat/qyj19920704 2万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

shell>sed (对文件的内容进行替换)

shell>sed (对文件的内容进行替换)

qq_42069216的博客 6423

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

sed -i 修改文件的坑

其中block块存储文件的内容,而inode存储的信息包括:文件字节数,文件拥有者的User ID,文件的Group ID,文件的权限,链接数(即有多少文件名指向这个inode),时间戳,block位置等信息。因此放在本文的case当中,当对 xxx.log 执行 sed -i 操作后,生成了一个新的xxx.log(inode不一样),而旧的xxx.log被unlink,但直到java应用完成对当天日志的写操作后,旧日志才被删除(也就是日志白写了),从而之后看到的xxx.log没有追加新的内容。

aswasw的博客 998

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

sed 追加文件内容

追加用法总结 1、a 在匹配行后面追加 2、i 在匹配行前面追加 3、r 将文件内容追加到匹配行后面 4、w 将匹配行写入指定文件 在匹配行后面追加a passwd文件第10行后面追加"Add Line Behind" sed -i '10aAdd Line Behind' passwd    passwd文件第10行到第20行,每一行后面都追...

weixin_30535043的博客 1248

shell-sed命令

s 1.在命令行定义编辑器命令(直接将数据通过管道输入sed编辑器处理) echo “this is a test” | sed 's/test/big test/' 输出:this ia a big test 2.在命令行使用多个编辑器命令 sed -e sed -e ‘ ’ ;‘ ’ script file 3.从文件中读取编辑器指令 sed -f file 。将file中指定的命令天添加到...

qq_37657601的博客 238

sed过滤后写入文件_Sed文本文件工具的使用详解

Sed文本文件工具的使用详解一、概述sed 工具实际上就是一个非交互式的编辑器,主要是为了处理文本而生的,我们知道处理文本的三剑客是 grep sed awk 我们之前学习过 grep 文本过滤工具,它的主要作用是为了过滤文本,而sed 工具也是过滤文本,只不过sed工具针对的是文件中的每一行,而且sed工具更加强大,下面还具体说明一下sed 工具的原理。二、sed 原理sed 工具实际上的原理,...

weixin_39902508的博客 765

Linux文件编辑修改命令sed

sed [选项]command输入文件搜索举例: sedfile.txt直接修改文件内容(危险动作)-i 选项。

2503_92191991的博客 765

sed修改文件内容

在写Shell脚本的时候,有时候要替换、删除某个文件中的内容,但是又不方便用vim做交互的动作,这就可以用到『sed』命令来做批量的替换、插入、删除 用法 sed [options] 'command' file(s) # -f 将sed命令内容写在一个文件中,执行命令 sed -f scriptfile file(s) # -i 直接对文件原地修改 sed -i 'command' file(s) # 默认sed只是通过内存临时修改文件,源文件无影响 常用选项(options): -n∶

Hanscal 1万+

sed利用脚本处理文件

sed 命令是利用脚本来处理文本文件。它可以依照脚本的指令来处理、编辑文本文件。主要用来自动编 辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

2201_75549363的博客 1450

Linux中sed命令使用大全

Linux中sed命令使用大全 sed编辑器是一种流式编辑器,与常见的交互式文本编辑器相反,交互式文本编辑器比如vim,可以通过键盘来交互式插入,删除文本,替换文本,流试编辑器会在编辑器处理数据之前预先提供一组规则编辑数据流。废话少说,直接看用法。 需要强调的是,sed命令不会改变源文件的内容 1.1 sed命令格式 sed options script file 其中optio...

qq1483661204的博客 4316

[sed] 用sed替换文件中的内容

看到有人用 sed 工具批量替换文件中的内容:cat error.h | sed -e s/^extern/ int/ errno/;/#include/ // > error.h于是仿照这个用法,来做我的处理。我的CVS从winnt平台迁移到了linux下面了,原来的文件夹名是大小写不敏感的,现在需要注意了,这不, 出问题了:)我的模块名原来是webmail_admin, 而在C

myhan@优快云 3723
上一篇: docker 初识--笔记
下一篇: django框架中,添加用户操作记录和查询功能
Iphone4
博客等级 码龄17年 17粉丝 53原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值