也想出现在这里? 联系我们

Linux系统中清理文件和清理环境变量的方法

作者 : 小编 本文共3150个字,预计阅读时间需要8分钟 发布时间: 2022-11-2 共2.1K人阅读
也想出现在这里? 联系我们

使用 Find 命令来帮你找到那些需要清理的文件一个问题几乎困扰着所有的文件系统 — 包括 Unix 和其他的 — 那就是文件的不断积累。几乎没有人愿意花时间清理掉他们不再使用的文件和整理文件系统,结果,文件变得很混乱,很难找到有用的东西,要使它们运行良好、维护备份、易于管理,这将是一种持久的挑战。

我见过的一种解决问题的方法是建议使用者将所有的数据碎屑创建一个文件集合的总结报告或"概况",来报告诸如所有的文件数量;最老的,最新的,最大的文件;并统计谁拥有这些文件等数据。如果有人看到五年前的一个包含五十万个文件的文件夹,他们可能会去删除哪些文件 — 或者,至少会归档和压缩。主要问题是太大的文件夹会使人担心误删一些重要的东西。如果有一个描述文件夹的方法能帮助显示文件的性质,那么你就可以去清理它了。

当我准备做 Unix 文件系统的总结报告时,几个有用的 Unix 命令能提供一些非常有用的统计信息。要计算目录中的文件数,你可以使用这样一个 find 命令。

复制代码

代码如下:

$ find . -type f | wc -l187534

虽然查找最老的和最新的文件是比较复杂,但还是相当方便的。在下面的命令,我们使用 find 命令再次查找文件,以文件时间排序并按年-月-日的格式显示,在列表顶部的显然是最老的。

在第二个命令,我们做同样的,但打印的是最后一行,这是最新的。

复制代码

代码如下:

$ find -type f -printf \’%T+ %p\\n\’ | sort | head -n 12006-02-03+02:40:33 ./skel/.xemacs/init.el$ find -type f -printf \’%T+ %p\\n\’ | sort | tail -n 12015-07-19+14:20:16 ./.bash_history

printf 命令输出 %T(文件日期和时间)和 %P(带路径的文件名)参数。

如果我们在查找家目录时,无疑会发现,history 文件(如 .bash_history)是最新的,这并没有什么用。你可以通过 "un-grepping" 来忽略这些文件,也可以忽略以.开头的文件,如下图所示的。

复制代码

代码如下:

$ find -type f -printf \’%T+ %p\\n\’ | grep -v \”\\./\\.\” | sort | tail -n 12015-07-19+13:02:12 ./isPrime

寻找最大的文件使用 %s(大小)参数,包括文件名(%f),因为这就是我们想要在报告中显示的。

复制代码

代码如下:

$ find -type f -printf \’%s %f \\n\’ | sort -n | uniq | tail -120183040 project.org.tar

统计文件的所有者,使用%u(所有者)

复制代码

代码如下:

$ find -type f -printf \’%u \\n\’ | grep -v \”\\./\\.\” | sort | uniq -c 180034 shs 7500 jdoe

如果文件系统能记录上次的访问日期,也将是非常有用的,可以用来看该文件有没有被访问过,比方说,两年之内没访问过。这将使你能明确分辨这些文件的价值。这个最后访问(%a)参数这样使用:

复制代码

代码如下:

$ find -type f -printf \’%a+ %p\\n\’ | sort | head -n 1Fri Dec 15 03:00:30 2006+ ./statreport

当然,如果大多数最近​​访问的文件也是在很久之前的,这看起来你需要处理更多文件了。

复制代码

代码如下:

$ find -type f -printf \’%a+ %p\\n\’ | sort | tail -n 1Wed Nov 26 03:00:27 2007+ ./my-notes

要想层次分明,可以为一个文件系统或大目录创建一个总结报告,显示这些文件的日期范围、最大的文件、文件所有者们、最老的文件和最新访问时间,可以帮助文件拥有者判断当前有哪些文件夹是重要的哪些该清理了。

如何在 Linux 上运行命令前临时清空 Bash 环境变量如何显示当前环境?打开终端应用程序并输入下面的其中一个命令:

复制代码

代码如下:

printenv

复制代码

代码如下:

env

输出样例:统计环境变量数目输入下面的命令:

复制代码

代码如下:

env | wc -lprintenv | wc -l # 或者

输出样例:

复制代码

代码如下:

20

在干净的 bash/ksh/zsh 环境中运行程序语法如下所示:

复制代码

代码如下:

env -i your-program-name-here arg1 arg2 …

例如,要在不使用 http_proxy 和/或任何其它环境变量的情况下运行 wget 程序。临时清除所有 bash/ksh/zsh 环境变量并运行 wget 程序:

复制代码

代码如下:

env -i /usr/local/bin/wget www.cyberciti.bizenv -i wget www.cyberciti.biz # 或者

这当你想忽视任何已经设置的环境变量来运行命令时非常有用。我每天都会多次使用这个命令,以便忽视 http_proxy 和其它我设置的环境变量。

例子:使用 http_proxy

复制代码

代码如下:

$ wget www.cyberciti.biz–2015-08-03 23:20:23– http://www.cyberciti.biz/Connecting to 10.12.249.194:3128… connected.Proxy request sent, awaiting response… 200 OKLength: unspecified [text/html]Saving to: \’index.html\’index.html [ <=> ] 36.17K 87.0KB/s in 0.4s2015-08-03 23:20:24 (87.0 KB/s) – \’index.html\’ saved [37041]

例子:忽视 http_proxy

复制代码

代码如下:

$ env -i /usr/local/bin/wget www.cyberciti.biz–2015-08-03 23:25:17– http://www.cyberciti.biz/Resolving www.cyberciti.biz… 74.86.144.194Connecting to www.cyberciti.biz|74.86.144.194|:80… connected.HTTP request sent, awaiting response… 200 OKLength: unspecified [text/html]Saving to: \’index.html.1\’index.html.1 [ <=> ] 36.17K 115KB/s in 0.3s2015-08-03 23:25:18 (115 KB/s) – \’index.html.1\’ saved [37041]

-i 选项使 env 命令完全忽视它继承的环境。但是,它并不会阻止你的命令(例如 wget 或 curl)设置新的变量。同时,也要注意运行 bash/ksh shell 的副作用:

复制代码

代码如下:

env -i env | wc -l ## 空的 ### 现在运行 bash ##env -i bash## bash 设置了新的环境变量 ##env | wc -l

例子:设置一个环境变量语法如下:

复制代码

代码如下:

env var=value /path/to/command arg1 arg2 …## 或 ## var=value /path/to/command arg1 arg2 …

例如设置http_proxy:

复制代码

代码如下:

env http_proxy=\”http://USER:PASSWORD@server1.cyberciti.biz:3128/\” /usr/local/bin/wget www.cyberciti.biz

1. 本站所提供的源码模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: rayer@88.com),我们会及时删除,给您带来的不便,我们深表歉意!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.zyfx8.cn",如遇到无法解压的请联系管理员!
本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
资源分享吧 » Linux系统中清理文件和清理环境变量的方法

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
织梦模板使用说明
你下载的织梦模板并不包括DedeCMS使用授权,根据DedeCMS授权协议,除个人非盈利站点外,均需购买DedeCMS商业使用授权。购买地址: http://www.desdev.cn/service-dedecms.html

发表评论

Copyright 2015-2020 版权所有 资源分享吧 Rights Reserved. 蜀ICP备14022927号-1
开通VIP 享更多特权,建议使用QQ登录