Linux:RHEL6.10圣地亚哥
当我将sed-n一起使用(用于静默模式)时,它对原始文件有效,但为什么它最终创建了一个对文件没有影响的新文件,并在文件扩展名中用相同的名称+后缀字符n,请参见下面的-file:/tmp/11.txtn

   -n, --quiet, --silent
          suppress automatic printing of pattern space

在这里
[myuser@rhel6linuxserverl15 a_folder]$ cat /tmp/11.txt
arun nuka
arun snooka
arun chinga
arun patinga

[myuser@rhel6linuxserverl15 a_folder]$ sed -i "/arun snooka/ d" /tmp/11.txt
[myuser@rhel6linuxserverl15 a_folder]$ cat /tmp/11.txt
arun nuka
arun chinga
arun patinga

[myuser@rhel6linuxserverl15 a_folder]$ sed -in "/arun chinga/ d" /tmp/11.txt
[myuser@rhel6linuxserverl15 a_folder]$
[myuser@rhel6linuxserverl15 a_folder]$ cat /tmp/11.txt
arun nuka
arun patinga

[myuser@rhel6linuxserverl15 a_folder]$ ls -l /tmp/11*
-rw-r--r-- 1 myuser grpup1 24 Apr 25 16:19 /tmp/11.txt
-rw-r--r-- 1 myuser grpup1 36 Apr 25 16:19 /tmp/11.txtn
[myuser@rhel6linuxserverl15 a_folder]$ cat /tmp/11.txtn
arun nuka
arun chinga
arun patinga

[myuser@rhel6linuxserverl15 a_folder]$

最佳答案

-i接受表示备份文件扩展名的可选参数。使用-n -i或指定扩展名(-n -i~是常见的)。
-I[后缀],--就地[=后缀]
就地编辑文件(如果提供后缀,则进行备份)

08-26 16:12