linux命令,查看文件或文件夹大小,清空正在运行的日志文件

本文介绍如何使用du命令的-s和-h选项来查看文件或文件夹的大小,以K,M,G为单位提高信息的可读性。同时,提供清空日志文件的方法,避免使用rm-rf命令导致空间无法释放的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查看文件或文件夹大小
du -sh *
说明:
-s只显示总和的大小
-h以K,M,G为单位,提高信息的可读性。

  • 指定文件或文件夹,或用*代表当前目录下的所有

清空正在运行的日志文件
使用rm -rf 是不会释放空间的,除非杀死进程
所以可以使用
echo ‘’ > xxxx.log

Linux系统中,删除文件的主要命令是 `rm`,它可以根据不同的参数实现多种删除方式。以下是几种常见的用法: ### 删除单个文件 要删除一个单独的文件,只需使用 `rm` 命令后跟文件名即可: ```bash rm 文件名 ``` 例如,要删除名为 `example.txt` 的文件,可以执行以下命令: ```bash rm example.txt ``` ### 删除多个文件 如果需要删除多个文件,可以在 `rm` 命令后列出所有要删除的文件名,并用空格分隔: ```bash rm 文件1 文件2 文件3 ``` 例如,要删除 `file1.txt`、`file2.txt` 和 `file3.txt` 这三个文件,可以执行以下命令: ```bash rm file1.txt file2.txt file3.txt ``` ### 删除文件夹及其内容 如果要删除整个文件夹及其所有内容,可以使用 `-r` 参数(递归删除)来确保连同子文件夹一起删除: ```bash rm -r 文件夹名 ``` 请注意,递归删除非常危险,因为它会将文件夹及其所有内容完全删除,无法恢复。因此,在执行此操作前请务必确认。 例如,要删除名为 `my_folder` 的文件夹及其所有内容,可以执行以下命令: ```bash rm -r my_folder ``` ### 确认删除 默认情况下,`rm` 命令不会提示用户确认删除操作。如果你希望在删除文件时得到确认提示,可以使用 `-i` 参数: ```bash rm -i 文件名 ``` 例如,要删除 `important.txt` 文件并在删除前确认,可以执行以下命令: ```bash rm -i important.txt ``` 此时,系统会提示类似以下信息: ``` rm: 是否删除 "important.txt"? ``` 输入 `y` 表示确认删除,输入 `n` 表示取消删除。 ### 强制删除 如果你希望在删除文件时不接收任何确认提示,并强制删除文件,可以使用 `-f` 参数: ```bash rm -f 文件名 ``` 例如,要强制删除名为 `temp.txt` 的文件,可以执行以下命令: ```bash rm -f temp.txt ``` 请注意,使用 `-f` 参数时,文件会被立即删除,无法恢复,因此请谨慎使用。 ### 批量删除文件 如果你想批量删除具有某些关键字的文件,可以使用通配符 `*` 来匹配文件名模式: ```bash rm -f *文件关键字* ``` 例如,要删除所有包含 `stderrout.log` 的文件,可以执行以下命令: ```bash rm -f *stderrout.log* ``` ### 清空文件内容而不删除文件 如果你想清空文件内容但保留文件本身,可以使用重定向操作符 `>`: ```bash > 文件名 ``` 例如,要清空名为 `consult-gops-web-error.log` 的文件内容,可以执行以下命令: ```bash > consult-gops-web-error.log ``` 如果你需要批量清空文件内容,可以结合 `find` 命令和循环语句: ```bash for i in `find 日志文件路径 -name "*筛选关键字"`; do >$i; done ``` 例如,要清空 `/home/module-consult/logs` 目录下所有以 `stderrout.log` 结尾的文件内容,可以执行以下命令: ```bash for i in `find /home/module-consult/logs -name "*stderrout.log"`; do >$i; done ``` ### 彻底删除文件 如果你希望彻底删除文件并防止恢复,可以使用 `shred` 命令。`shred` 会用随机数据覆盖文件所在的节点和数据块,并最终删除文件: ```bash shred -u 文件名 ``` 如果你想更彻底地清除文件,可以在命令中添加 `-z` 参数,先用随机数据填充,最后再用0填充: ```bash shred -u -z 文件名 ``` 此外,`shred` 还支持其他参数,如 `-f`(更改权限允许写入)、`-n`(重写次数,默认为3次)、`-s`(指定粉碎大小)等。 ### 删除文件夹之外的所有文件 如果你想删除某个文件夹中除了特定文件文件夹外的所有文件,可以使用以下方法之一: #### 方法1:复制保留文件后删除再移动回来 1. 将需要保留的文件复制到其他文件夹: ```bash mv keep ../ ``` 2. 删除当前目录
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值