Linux中通过命令直接删除文件中最后一行

何谓Sed(Stream EDitor):

Sed原为UNIX系统上的非交谈式文字编辑器(non-interactive stream editor)。当Sed读入待编辑文件,会依编辑命令来进行文件的编辑工作。

sed -i ‘$d‘ file

如同其它UNIX的指令一般,Sed亦是由标准输入(standard input)读入欲编辑的文件,经Sed处理后,再由标准输出(standard output)送出结果。由于Sed是采逐行读入文字,并依据命令来进行编辑,因此可视作档案中的文字逐行通过Sed编辑器。

由于Sed可依使用者所下的命令自动完成文件编辑工作,因而成为管线式处理(pipe line)中文件编辑的重要工具。

原文 http://www.linuxdiyf.com/viewarticle.php?id=85375

时间: 2024-12-27 07:30:31

Linux中通过命令直接删除文件中最后一行的相关文章

Linux下执行的java命令重定向到文件中的方法

在Linux下通常会执行如:java -version 的命令, 但是,命令只是打印到了屏幕上不能重定向到文件中或标准输出流中. 此时需要将错误输出流重定向到标准输出流中就可以得到了. 比如:java -version> test.log 2>&1 就可以将输出的信息重定向到test.log中,注意>与-version之间不能有空格. 再比如:java -version 2>&1 | grep "java version" | awk '{pri

【Linux】命令写在文件中并调用awk -f

我们在使用awk命令的时候,有时候命令特别长,在终端写出来格式太乱,难以阅读,以下是一个将命令写在文件中,并使用awk调用的具体案例 1.现在有文件file3.txt,内容如下: 2.ak2.awk脚本 #打印标题并格式化打印出数量合计 BEGIN { FS="\t" #设置字段分割符 printf("%10s %2s %5s %s\n\n", "Fruits","Num","Price","Pl

删除文件中的 ^M 字符

删除文件中的 ^M 字符 有时候,我们在 Linux 中打开曾在 Win 中编辑过的文件时,会在行尾看到 ^M 字符.虽然,这并不影响什么,但心里面还是有点不痛快.如果想要删除这些 ^M 字符,可以使用 Vim 来轻松搞定它. 在 Vim 的命令模式中输入 :%s/^M$//g 后,回车即会自动删除该文件中的所有 ^M 字符. (^M是使用 "CTRL-V CTRL-M" 而不是字面上的 ^M) 那么,这句命令到底是什么意思呢?% 指匹配整个文件,s 是置换的意思,^M 注意要用 Ct

linux sed 批量替换多个文件中的字符串

转载:http://blog.csdn.net/kauu/article/details/1757325 一.linux sed 批量替换多个文件中的字符串 sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir` 例如:替换/home下所有文件中的www.bcak.com.cn为bcak.com.cn sed -i "s/www.bcak.com.cn/bcak.com.cn/g" `grep ww

linux shell 脚本获取和替换文件中特定内容

1.从一串字符串中获取特定的信息 要求1:获取本机IP:menu.lst为系统镜象的IP配置文件,需要从中获取到本机IP信息(从文件获取信息) 1 timeout 1 2 default 0 3 4 title live 5 find --set-root /casper/vmlinuz 6 kernel /casper/vmlinuz boot=casper ignore_uuid showmounts ip=eth0,10.0.66.66,255.255.240.0,10.0.64.3 7

inux中tail命令---用于查看文件内容

linux中tail命令---用于查看文件内容 最基本的是cat.more和less.1. 如果你只想看文件的前5行,可以使用head命令,如:head -5 /etc/passwd2. 如果你想查看文件的后10行,可以使用tail命令,如:tail -2 /etc/passwd 或 tail -n 2 /etc/passwdtail -f /var/log/messages参数-f使tail不停地去读最新的内容,这样有实时监视的效果 用Ctrl+c来终止!3. 查看文件中间一段,你可以使用se

linux sed 批量替换多个文件中的字符

格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir` 例如:替换/home下所有文件中的www.admin99.net为admin99.net sed -i "s/www.admin99.net/admin99.net/g" `grep w

C# winform 实现删除文件中数据的一行

C#如何能删除文件中数据的一行 不说了直接上代码吧,简单粗暴 List<string> lines = new List<string>(File.ReadAllLines(@"C:\Users\lenovo\Desktop\删除文件一行.txt")); lines.Remove("34 11"); File.WriteAllLines(@"C:\Users\lenovo\Desktop\删除文件一行.txt", line

Linux 如何通过命令查看一个文件的某几行(中间几行或最后几行)

linux 如何显示一个文件的某几行(中间几行) [一]从第3000行开始,显示1000行.即显示3000~3999行 cat filename | tail -n +3000 | head -n 1000 [二]显示1000行到3000行 cat filename | head -n 3000 | tail -n +1000 *注意两种方法的顺序 分解: tail -n 1000:显示最后1000行 tail -n +1000:从1000行开始显示,显示1000行以后的 head -n 100