linux 自己文件的内容追加在自己文件中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 自己文件的内容追加在自己文件中相关的知识,希望对你有一定的参考价值。
1.echo""里输入到要换行的地方直接回车就行了,记得双引号引出.echo "asfsaf
gfsfdsf
asfasdas
gds
fs
f" >> 123.txt
2.利用cat命令
利用cat text1.txt >>text2.txt 命令可以将text1.txt内的内容添加到text2.txt末尾。
这是常用的两种方式。 参考技术A 比如你的文件是/a.txt ,可以使用
cat /a.txt | xargs >> /a.txt 参考技术B 假设文件名为file
cp file tmp
cat tmp >>file
rm tmp追问
只有新建一个文件的方法吗
参考技术C cat test >> testmore test >> test来自:求助得到的回答 参考技术C 用>>来重定向
使用mmap(linux系统调用)追加文件内容
在网上找了一些例子,都实践了一遍,但是这些例子都是读取文件,或者将文件中的字符串“asdf”改为“qwer”这种,我想要的功能是在文件末尾增加一行新的内容,就是普通的write进去,求方法。我自己根据mmap文档中的参数说明,尝试了若干次都失败了。
源码如上图,创建一个文件“mmapfile.txt”,往里面追加一句话“just a test for mmap.”
下一次再执行这个程序,mmapfile.txt文件中之前的内容不被删除,而是”追加“。
void * mmap(void *start, size_t length, int prot , int flags, int fd, off_t
offset);
PROT_WRITE //页可以被写入 //这个参数你设置没有?追问
源码如上图
常见的虚拟机软件Vmware的,现在最新的版本是6.0,很不错,推荐,以及微软的VirtualPC,功能也很不错,但我还没有用完。 参考技术B 图代码用了lseek(reposition read/write file offset),这个并不能改变文件的大小,所以追加失败。 参考技术C 最简单的办法是:
echo "文件内容“ >> 文件追问
我必须用mmap这个方法
追答网上查mmap是用来内存映射的?你确定用这个来修改文件?
追问确定,开源项目log4c中就使用了这个方法,在linux系统中运行速度比普通的fprintf, write这类c语言流输入速度快很多。我自己懂得fprintf这种入门级的c语言方法
追答好吧,那还是等高手来解答吧,这个不懂
以上是关于linux 自己文件的内容追加在自己文件中的主要内容,如果未能解决你的问题,请参考以下文章