java 输出到文件尾_如何将输出附加到文本文件的末尾

如何将命令输出附加到文本文件的末尾?

#1楼

我建议您做两件事:

在Shell脚本中使用>>将内容附加到特定文件。 文件名可以是固定的,也可以使用某些模式。

设置每小时的cronjob来触发Shell脚本

#2楼

例如,您的文件包含:

1. mangesh@001:~$ cat output.txt

1

2

EOF

如果您想在文件末尾附加->请记住'text'>>'filename'之间的空格

2. mangesh@001:~$ echo somthing to append >> output.txt|cat output.txt

1

2

EOF

somthing to append

并覆盖文件内容:

3. mangesh@001:~$ echo 'somthing new to write' > output.tx|cat output.tx

somthing new to write

#3楼

使用command >> file_to_append_to附加到文件。

例如, echo "Hello" >> testFile.txt

注意:如果仅使用一个> ,则将完全覆盖文件的内容。 为了确保永远不会发生,您可以在.bashrc添加set -o noclobber 。

这样可以确保,如果您不小心在现有文件中键入command > file_to_append_to ,它将提醒您该文件已存在。 错误消息样本: file exists: testFile.txt

因此,当您使用> ,它将仅允许您创建一个新文件,而不会覆盖现有文件。

#4楼

要append文件,请使用>>

echo "hello world" >> read.txt cat read.txt echo "hello siva" >> read.txt cat read.txt

那么输出应该是

hello world # from 1st echo command hello world # from 2nd echo command hello siva

要overwrite文件,请使用>

echo "hello tom" > read.txt cat read.txt

那么输出是

hello tom

#5楼

我会使用printf而不是echo,因为它更可靠并且可以正确处理格式,例如换行\\n 。

此示例产生的输出类似于先前示例中的echo:

printf "hello world" >> read.txt

cat read.txt

hello world

但是,如果在此示例中将printf替换为echo,则echo会将\\ n视为字符串,因此忽略了意图

printf "hello\nworld" >> read.txt

cat read.txt

hello

world

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值