位置: 编程技术 - 正文
推荐整理分享Linux系统中清理文件和清理环境变量的方法(linux系统清理磁盘空间),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:linux 清理命令,linux系统怎么清理垃圾,linux清理系统垃圾,清理linux内存,linux清理inode,linux 清理命令,linux 系统清理,linux系统清理磁盘空间,内容如对您有帮助,希望把文章链接给更多的朋友!
使用 Find 命令来帮你找到那些需要清理的文件一个问题几乎困扰着所有的文件系统 -- 包括 Unix 和其他的 -- 那就是文件的不断积累。几乎没有人愿意花时间清理掉他们不再使用的文件和整理文件系统,结果,文件变得很混乱,很难找到有用的东西,要使它们运行良好、维护备份、易于管理,这将是一种持久的挑战。
我见过的一种解决问题的方法是建议使用者将所有的数据碎屑创建一个文件集合的总结报告或"概况",来报告诸如所有的文件数量;最老的,最新的,最大的文件;并统计谁拥有这些文件等数据。如果有人看到五年前的一个包含五十万个文件的文件夹,他们可能会去删除哪些文件 -- 或者,至少会归档和压缩。主要问题是太大的文件夹会使人担心误删一些重要的东西。如果有一个描述文件夹的方法能帮助显示文件的性质,那么你就可以去清理它了。
当我准备做 Unix 文件系统的总结报告时,几个有用的 Unix 命令能提供一些非常有用的统计信息。要计算目录中的文件数,你可以使用这样一个 find 命令。
复制代码代码如下:$ find . -type f | wc -l虽然查找最老的和最新的文件是比较复杂,但还是相当方便的。在下面的命令,我们使用 find 命令再次查找文件,以文件时间排序并按年-月-日的格式显示,在列表顶部的显然是最老的。
在第二个命令,我们做同样的,但打印的是最后一行,这是最新的。
复制代码代码如下:$ find -type f -printf '%T+ %pn' | sort | head -n --+:: ./skel/.xemacs/init.el$ find -type f -printf '%T+ %pn' | sort | tail -n --+:: ./.bash_historyprintf 命令输出 %T(文件日期和时间)和 %P(带路径的文件名)参数。
如果我们在查找家目录时,无疑会发现,history 文件(如 .bash_history)是最新的,这并没有什么用。你可以通过 "un-grepping" 来忽略这些文件,也可以忽略以.开头的文件,如下图所示的。
复制代码代码如下:$ find -type f -printf '%T+ %pn' | grep -v "./." | sort | tail -n --+:: ./isPrime寻找最大的文件使用 %s(大小)参数,包括文件名(%f),因为这就是我们想要在报告中显示的。
复制代码代码如下:$ find -type f -printf '%s %f n' | sort -n | uniq | tail - project.org.tar统计文件的所有者,使用%u(所有者)
复制代码代码如下:$ find -type f -printf '%u n' | grep -v "./." | sort | uniq -c shs jdoe如果文件系统能记录上次的访问日期,也将是非常有用的,可以用来看该文件有没有被访问过,比方说,两年之内没访问过。这将使你能明确分辨这些文件的价值。这个最后访问(%a)参数这样使用:
复制代码代码如下:$ find -type f -printf '%a+ %pn' | sort | head -n 1Fri Dec :: + ./statreport当然,如果大多数最近访问的文件也是在很久之前的,这看起来你需要处理更多文件了。
复制代码代码如下:$ find -type f -printf '%a+ %pn' | sort | tail -n 1Wed Nov :: + ./my-notes要想层次分明,可以为一个文件系统或大目录创建一个总结报告,显示这些文件的日期范围、最大的文件、文件所有者们、最老的文件和最新访问时间,可以帮助文件拥有者判断当前有哪些文件夹是重要的哪些该清理了。
如何在 Linux 上运行命令前临时清空 Bash 环境变量如何显示当前环境?打开终端应用程序并输入下面的其中一个命令:
复制代码代码如下:printenv或
复制代码代码如下:env输出样例:统计环境变量数目输入下面的命令:
复制代码代码如下:env | wc -lprintenv | wc -l # 或者输出样例:
复制代码代码如下:在干净的 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---- ::-- to ...:... connected.Proxy request sent, awaiting response... OKLength: unspecified [text/html]Saving to: 'index.html'index.html [ <=> ] .K .0KB/s in 0.4s-- :: (.0 KB/s) - 'index.html' saved []例子:忽视 http_proxy复制代码代码如下:$ env -i /usr/local/bin/wget www.cyberciti.biz---- ::-- www.cyberciti.biz... ...Connecting to www.cyberciti.biz|...|:... connected.HTTP request sent, awaiting response... OKLength: unspecified [text/html]Saving to: 'index.html.1'index.html.1 [ <=> ] .K KB/s in 0.3s-- :: ( KB/s) - 'index.html.1' saved []-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=" /usr/local/bin/wget www.cyberciti.biz
Linux系统中使用fdupes来查找并删除重复文件 对于大多数计算机用户而言,查找并替换重复的文件是一个常见的需求。查找并移除重复文件真是一项令人不胜其烦的工作,它耗时又耗力。但如果你
腾讯云 阿里云 挂载硬盘方法(数据盘) 腾讯云阿里云一般都是两个盘数据盘需要分区挂在一下先检查下数据盘在不在命令复制代码代码如下:fdisk-l对数据盘分区复制代码代码如下:fdisk/dev/xvdb格
Linux系统中使用dd命令检测硬盘性能的方法 dd命令的基本使用dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。注意:指定数字的地方若以下列字符结尾,则乘以相应的数字:b
标签: linux系统清理磁盘空间
本文链接地址:https://www.jiuchutong.com/biancheng/350462.html 转载请保留说明!友情链接: 武汉网站建设