
在Linux中,如何删除文件的最后一行可能是一个常见的需求。这是针对那些希望在日常工作中快速操作文本文件的Linux用户而编写的。下面,我们将学习如何使用一些简单的Linux命令来完成这个任务。
1. 使用sed命令
sed命令是Linux中一个很强大的文本处理工具,它可以处理来自文本流的数据。其主要功能是查找、替换、删除文件中的文本。我们可以使用sed命令来删除文件的最后一行。
让我们创建一个名为“example.txt”的文本文件,其中包含以下内容:
“`
cat
dog
horse
cow
“`
现在,我们将使用sed命令在没有备份文件的情况下删除最后一行。要删除最后一行,请使用以下命令:
“`
sed -i ‘$ d’ example.txt
“`
在上述命令中,$(表示行尾)用于定位文件的最后一行,d用于删除定位的最后一行。-i选项用于在不创建备份的情况下直接修改原始文件。
现在,如果我们查看“example.txt”文件,将只剩下前三行,最后一行已被删除。
2. 使用head和wc命令
head命令返回文件或输入的前几行,并且wc命令用于计算文件或输入中的字节数、行数和单词数。
我们可以将这两个命令结合起来来删除文件的最后一行。以下是删除最后一行的命令:
“`
head -n $(($(wc -l temp.txt && mv temp.txt example.txt
“`
在上述命令中,head命令用于提取文件的头部内容(在这种情况下,除了最后一行之外的所有内容)。-n选项指定要提取的行数。$(($(wc -l 是用于将更改保存到原始文件中。
现在,“example.txt”文件中将只剩下前三行,最后一行已被删除。
3. 使用vim命令
除了命令行命令之外,我们还可以使用vim编辑器来删除文件的最后一行。以下是在没有备份文件的情况下使用vim编辑器删除最后一行的命令:
“`
vim -c ‘d$’ -c ‘wq’ example.txt
“`
在上述命令中,d$用于删除定位的最后一行,wq用于保存更改并退出vim编辑器。
现在,“example.txt”文件中将只剩下前三行,最后一行已被删除。
结论
在Linux上删除文件的最后一行是一个常见需求,经过本文的介绍,我们了解了使用命令行命令和vim编辑器删除文件的最后一行。现在,我们可以根据需要选择适合我们的方法来删除文件的最后一行。
相关问题拓展阅读:
- linux 中如何修改文件内容?
linux 中如何修改文件内容?
vi有两个模式:一个是编辑一个是命令。我们从命令进入编辑为:i,o,a。一般使用州基的是i:因为这个我是最熟悉的。退出点击esc键,就进入命令模式。
我们需要删除文件的当前行和后一行,命令为:2dd,一般我们使用的是单个字符的删除为:x。我们一般进入编辑模式,来进行添加,修改,删除。
但是当我们删除和修改的内容过多的时候,我们使用命令行模式,进行修改,这样方便,快捷,而命令行中,最常用到的是x,dd,u,p这四个命令:
x:删除当前字符;
dd:删除当前行;
u:恢复前一步操作;
p:复制之前删除的行。
vi是Linux终端下或控制台下常用的编辑器,基本的操作方式为:vi /路径/文件名
例如,vi /etc/saikik表示显示/etc/saikik文件的内容。使用键盘上的Page Up和Page Down键可以上下翻页;按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入册首谨编辑状态,这时从键盘输入的内容将插入到光标位置;再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出。
如果不想保存而直接退出,则按下Esc键后,输入“:q!”,然后回车即芹棚可。“wq”表示Write和Quit,即保存退出;“q!”表示忽略修改强行退出。
首先打开命令控制台找到要编辑的文件,执行命令ls看看下面有几个文件,在这个下面有个index.php文件。
2.然后输入执行命令vi index.php。
3.如果你现在想修改index文件的内镇喊容,按下间键盘上的’i’键,最下方就会变成INSERT,这个时候就可以修改了。
4.在修改文件内容之后,输入竖旅慎echo的代码进行保存 Esc+:+wq 这个是保存,回车保存。
5.保存完成以后,再余敬次打开这个文件会发现刚才写入的代码已经保存到里面。
假如文件名叫demo.c,你就在终端输入vi demo.c,回车,然后就可以像开始编辑时一样修改啦
可以使用vim命令编辑文件。具体的是,
1、vi filename :打开或新建文件,并将光标置于之一行首
2、编辑移动前陆轮光标类命令
h :光标左移一个字符
l :光标右移一个字符
space:光标右移一个字符
Backspace:光标左移一个字符
k或Ctrl+p:光标上移一行
j或Ctrl+n :光标下移一行
Enter :光标下移一行
w或W :光标右移一个字至字首
b或B :光标左悉桥移一个字至字首
e或E :光标右移一个字至字尾
插入文本类命令
i :在光标前
I :在当前行首
最后使用
:x:保存当前文件并退出
vim的命慧信令很多可以参考手册操作
关于linux文件删除最后一行的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
香港服务器首选树叶云,2H2G首月10元开通。
树叶云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/194928.html<