当前位置:  操作系统/服务器>linux
本页文章导读:
    ▪linux中find命令的妙用      linux中find命令的妙用,感兴趣的朋友可参考下。 1.删除长文件名: find /tmp name '*'| xargs rm -rf 2.删除14天前/home/oracle/dmp/下以2006开头的文件: find /home/oracle/dmp/ -name '2006*' -mtime +14 -exec rm -f {} \; .........
    ▪du与df在统计linux文件占用空间上的区别      本文为大家介绍du与df在统计linux文件占用空间上的区别,供大家学习参考。 先来看下,man中对这二个命令的介绍。 du:estimate file space usage  评估文件空间的使用情况。 df: report filesystem disk spac.........
    ▪linux下统计当前目录下文件数的方法介绍      linux下统计当前目录下文件数的方法介绍,有需要的朋友参考下。 查看当前目录下文件的个数 代码如下: ls -l | grep "^-" | wc -l 查看当前目录下文件的个数,包括子目录里的。 代码如下: ls -lR| .........

[1]linux中find命令的妙用
    来源: 互联网  发布时间: 2013-12-24

linux中find命令的妙用,感兴趣的朋友可参考下。

1.删除长文件名:
find /tmp name '*'| xargs rm -rf

2.删除14天前/home/oracle/dmp/下以2006开头的文件:
find /home/oracle/dmp/ -name '2006*' -mtime +14 -exec rm -f {} \;
 
3.删除时间界于A文件和B文件(不包括A、B文件) 
cd   youdir 
find   -name   "*"   -newer   A   !   -newer   B   -exec   rm   -f   {}   \;  
  
如果想同时删除A和B文件则可以用-o   连接条件 
find   -name   "*"   -o   -name   "A"   -o   -name   "B"   -newer   A   !   -newer   B   -exec   rm   -f   {}   \;  
  
如果不想recursive的删除,加上-maxdepth 1 的选项。 
  
如果要删除A文件之前的文件,请依上类推即可。

您可能感兴趣的文章:
find命令忽略某个或多个子目录的实例分享
linux命令行下查找文件的命令find 应用举例
find 按文件修改时间查找文件及find空文件夹
使用find命令找出并删除某一时间点的文件
find命令查找比某个文件新或旧的文件
使用find命令删除n天前的文件
linux find 命令详解


    
[2]du与df在统计linux文件占用空间上的区别
    来源: 互联网  发布时间: 2013-12-24

本文为大家介绍du与df在统计linux文件占用空间上的区别,供大家学习参考。

先来看下,man中对这二个命令的介绍。
du:estimate file space usage  评估文件空间的使用情况。
df: report filesystem disk space usage 打印出硬盘文件系统空间使用情况。

如何理解呢?
Summarize disk usage of each FILE, recursively for directories.
Mandatory arguments to long options are mandatory for short options too.
df displays the amount of disk space available on the filesys-tem containing each file name argument.  If no file name is given, the space available on  all currently  mounted filesystems  is  shown.  Disk space is shown in 1K blocks by default, unless the environment variable POSIXLY_COR-RECT is set, in which case 512-byte blocks are used.
If an argument is the absolute file name of a disk device node containing a mounted filesystem, df shows the space available  on  that  filesystem rather than on the filesystem containing the device node (which is always the root filesystem).  This version of df cannot show the space available on unmounted filesystems, because on  most  kinds of systems doing so requires very nonportable intimate knowledge of filesystem structures.

有时会遇到这样的情况,使用df -m和du -hs 'ls'查看出来的空间占用情况极为不一致。

du和df命令都被用于获得文件系统大小的信息:df用于报告文件系统的总块数及剩余块数,du -s
/用于报告文件系统使用的块数。但是,我们可以发现从df命令算出的文件系统使用块数的值与通过du命令得出的值是不一致的。
如下例:
# du -s /tmp
返回如下值:
12920 /tmp
而 df /tmp 返回如下值:
Filesystem 512-blocks Free %Used Iused %Iused Mounted on
/dev/hd3 57344 42208 26% 391 4% /tmp
从上面的值我们可以算出 -  = : 57344 - 42208 = 15136.

而15136大于12920。该值差异的存在是由于du与df命令实施上的不同: du -s命令通过将指定文件系统中所有的目录、符号链接和文件使用的块数累加得到该文件系统使用的总块数;而df命令通过查看文件系统磁盘块分配图得出总块数与剩余块数。

文件系统分配其中的一些磁盘块用来记录它自身的一些数据,如i节点,磁盘分布图,间接块,超级块等。这些数据对大多数用户级的程序来说是不可见的,通常称为Meta Data。
du命令是用户级的程序,它不考虑Meta Data,而df命令则查看文件系统的磁盘分配图并考虑Meta Data。df命令获得真正的文件系统数据,而du命令只查看文件系统的部分情况。例如,一个frag=4096 并且
nbpi=4096的空的大小为4MB的日志文件系统中Meta Data的分配情况如下:
1 4k block for the LVM
2 4k super blocks
2 4k blocks for disk maps
2 4k blocks for inode maps
2 4k blocks for .indirect
32 4k blocks for inodes
-------------------------
41 4k blocks for meta data on an empty 4MB file system

对于AIX 4.X版本:
执行 du /foo返回的结果如下:
8 /foo/lost+found
16 /foo

要使du命令输出的结果与df命令输出的结果匹配,我们必须要加上Meta Data。首先,将41个4k的块转换为以512字节为单位的值:
41 * 8 = 328
328(meta data) + 16(from du) = 344
所以有344个以512字节为单位的块分配给了这个空的文件系统。
而使用 df /foo命令我们可以得到下面的结果:
Filesystem 512-blocks Free %Used Iused %Iused Mounted on
/dev/lv01 8192 7848 5% 16 2% /foo
从中我们可以得到该文件系统使用的块数:8192(total blocks) - 7848(free blocks) = 344。该值与上面得出的值一致。
上面的换算方法对于空的文件系统很容易实现,但是对于非空的文件系统,由于Meta

Data中文件间接块的大小不定,因此较难实现。所以我们不需要查看du 与 df返回的值的匹配关系,而只需要了解du -s命令返回的值反映了分配给文件及目录的磁盘块数,而df命令则反映了文件系统的实际分配情况。df命令反映的实际情况包含了用户数据(文件及目录)和 Meta Data。

另一个表现出du与df命令不同之处的例子如下:
如果用户删除了一个正在运行的应用所打开的某个目录下的文件,则du命令返回的值显示出减去了该文件后的目录的大小。但df命令并不显示减去该文件后的大小。直到该运行的应用关闭了这个打开的文件,df返回的值才显示出减去了该文件后的文件系统的使用情况。

如果系统应用着一些读写磁盘文件较频繁的服务应用,那么就很可能出现上述的第二种情况。


    
[3]linux下统计当前目录下文件数的方法介绍
    来源: 互联网  发布时间: 2013-12-24

linux下统计当前目录下文件数的方法介绍,有需要的朋友参考下。

查看当前目录下文件的个数

代码如下:
ls -l | grep "^-" | wc -l

查看当前目录下文件的个数,包括子目录里的。

代码如下:
ls -lR| grep "^-" | wc -l

查看某目录下文件夹(目录)的个数,包括子目录里的。

代码如下:
ls -lR| grep "^d" | wc -l

注解:
ls -l
长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

grep "^-"
这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

wc -l
统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数
有的介绍说ls -l出来的信息第一行是Total,可以用grep进行过滤下。


    
最新技术文章:
▪linux系统中的列出敏感用户的脚本代码
▪a10 config backup for aXAPI
▪一键备份gitolite服务器的Shell脚本
▪nagios 分发文件实现代码
▪阿里云云服务器Linux系统更新yum源Shell脚本
▪一个监控LINUX目录和文件变化的Shell脚本分享
▪Linux下实现SSH免密码登录和实现秘钥的管理、...
▪Shell正则表达式之grep、sed、awk实操笔记
▪3个备份系统文件并邮件发送的Shell脚本分享
▪CentOS 6.3下给PHP添加mssql扩展模块教程
▪监控网站是否可以正常打开的Shell脚本分享
▪shell脚本编程之if语句学习笔记
▪shell脚本编程之循环语句学习笔记
▪shell脚本编程之case语句学习笔记
▪Shell脚本实现的阳历转农历代码分享
▪Shell脚本实现复制文件到多台服务器的代码分...
▪Shell脚本实现批量下载网络图片代码分享
▪Shell脚本实现检测文件是否被修改过代码分享
▪Shell脚本数组用法小结
▪Shell脚本批量重命名文件后缀的3种实现
▪C语言实现的ls命令源码分享
▪Linux下查找后门程序 CentOS 查后门程序的shell脚...
▪Shell 函数参数
▪linux shell 自定义函数方法(定义、返回值、变...
▪Shell实现判断进程是否存在并重新启动脚本分...
▪Shell脚本break和continue命令简明教程
▪Shell脚本函数定义和函数参数
▪让代码整洁、过程清晰的BASH Shell编程技巧
▪shell常用重定向实例讲解
▪awk中RS、ORS、FS、OFS的区别和联系小结
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3