当前位置: 首页>>技术问答>>正文


如何清除文件中的文本?

, ,

问题描述

如何清除文本文件中存在的文本而不打开它?

我的意思是,例如我有一个文件作为hello.txt,其中包含一些文本数据&如何清除该文件中的总文本而不打开它。

最佳解决办法

只需使用CTRL + ALT + T打开终端并输入

 > hello.txt

就是这样,你的文件中的数据将被清除,甚至打开它。

例:

command-line,bash,ubuntu

次佳解决办法

截断文件的最简单方法是将shell no-op命令(:)的输出重定向到要擦除的文件。

: > hello.txt

第三种解决办法

我也将使用rajagenupula的答案重定向。但是有一点灵活性。打开终端并输入,

cat > hello.txt

然后按Ctrl + C。它将清除以前的文件。如果你想要这么多,那就好了。

如果您希望在擦除文件后可以执行更多操作。通过这种方式,您不仅可以在不打开的情况下擦除文件,还可以在文件中编写一些格式正确的行。假设您希望在擦除文件后写“Ubuntu是最好的操作系统”,就这样做

cat > hello.txt
Ubuntu is the 
best OS

然后按Ctrl + C。现在,以前的文件已被删除。与此同时,当我把它们放在两行时,单词就在那里。

看例子:

command-line,bash,ubuntu

第四种办法

我必须一直使用日志文件。我找到的最简单的方法是使用以下命令:

cat /dev/null > hello.txt

这将删除文件内容的同一个,并为您留下一个空文件,而无需在编辑器中打开它,选择文本,任何这些东西。更具体地说,它的作用是用”/dev/null”的内容替换文件的内容,或者什么也没有。实际上它很漂亮。

唯一需要注意的是,您当前登录的用户必须具有对该文件的写入权限。

第五种办法

如果创建的文件名为hello.txt并且提供了一些文本,则终端ctrl + alt + t中的以下命令将删除hello.txt文件中的所有文本,

echo "" > hello.txt

command-line,bash,ubuntu

第六种办法

另一种方法 – cp /dev/null到文件

xieerqi:$ cat testFile.txt                                                                                        
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda1      115247656 83100492  26269816  76% /
none                   4        0         4   0% /sys/fs/cgroup
udev             2914492        4   2914488   1% /dev
tmpfs             585216     1152    584064   1% /run
none                5120        0      5120   0% /run/lock
none             2926072    98096   2827976   4% /run/shm
none              102400       76    102324   1% /run/user

xieerqi:$ cp /dev/null testFile.txt                                                                               

xieerqi:$ cat testFile.txt

xieerqi:$ 

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1618.html,未经允许,请勿转载。