您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

Linux常用的磁盘管理及文件目录管理命令

添加时间:2016-1-19 20:31:48  添加: 思海网络 
磁盘管理

日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩;

查看磁盘空间
查看磁盘空间利用大小 



代码如下:
df -h 

-h: human缩写,以人类易读方式显示结果(既带单位:比如M/G,如果不加这个参数,显示的数字以B为单位)


代码如下:
$df -h
/opt/app/todeav/config#df -h

Filesystem            Size  Used Avail Use% Mounted on


代码如下:
/dev/mapper/VolGroup00-LogVol00

                      2.0G  711M  1.2G  38% /
/dev/mapper/vg1-lv2    20G  3.8G   15G  21% /opt/applog
/dev/mapper/vg1-lv1    20G   13G  5.6G  70% /opt/app查看当前目录所占空间大小 


代码如下:
du -sh 

-h 人性化显示 
-s 递归整个目录的大小


代码如下:
$du -sh

653M查看当前目录下所有子文件夹排序后的大小

    for i in `ls`; do du -sh $i; done | sort
    或者:
    du -sh `ls` | sort打包/ 压缩
打包 
在linux中打包和压缩和分两步来实现的;打包是将多个文件归并到一个文件;压缩命令实现大小; 



代码如下:tar -cvf etc.tar /etc<==仅打包,不压缩! 
-c :打包选项 
-v :显示打包进度 
-f :使用档案文件 
注:有的系统中指定参数时不需要在前面加上-,直接使用tar xvf

压缩 



代码如下:
$gzip demo.txt 

生成

代码如下:demo.txt.gz
解包/解压缩
解包 



代码如下:
tar -xvf demo.tar 

-x 解包选项

解压后缀为 .tar.gz的文件

先解压缩,生成**.tar

 


代码如下:$gunzip demo.tar.gz2.解包:

 


代码如下:$tar -xvf demo.tar
 

代码如下:$bzip2 -d demo.tar.bz2bz2解压 


代码如下:tar jxvf demo.tar.bz2 
如果tar 不支持j,则同样需要分两步来解包解压缩,使用bzip2来解压,再使用tar解包; 


代码如下:bzip2 -d demo.tar.bz2 


代码如下:tar -xvf demo.tar 


代码如下:-d decompose解压缩

tar解压参数说明: 
-z 解压gz文件 
-j 解压bz2文件 
-J 解压xz文件

文件及目录管理
文件管理不外乎文件或目录的创建、删除、查询、移动,有mkdir/rm/mv

文件查询是重点,用find来进行查询;find的参数丰富,也非常强大;

查看文件内容是个大的话题,文本的处理有太多的工具供我们使用,在本章中只是点到即止,后面会有专门的一章来介绍文本的处理工具;

有时候,需要给文件创建一个别名,我们需要用到ln,使用这个别名和使用原文件是相同的效果;

创建和删除
创建:


代码如下:mkdir 
删除:rm 删除非空目录:

代码如下:rm -rf file 目录 
删除日志 


代码如下:$rm *log 
等价:


代码如下:$find ./ -name "*log" -exec rm {} \; 
查看当前目录下文件个数 



代码如下:$find ./ | wc -l 
移动:

代码如下:mv 
复制:

代码如下:cp 复制目录:

代码如下:cp -r 


代码如下:eg:$cp -r source_dir dest_dir 
目录切换
找到文件/目录位置:


代码如下:cd 
切换到上一个工作目录:

代码如下:cd - 
切换到home目录:cd or cd ~ 


代码如下:$pwd
显示当前路径 


代码如下:$cd path
更改当前工作路径为path 

列出目录项
显示当前目录下的文件


代码如下:ls 
按时间排序,以列表的方式显示目录项

代码如下:ls -lrt 
以上这个命令用到的频率如此之高,以至于我们需要为它建立一个快捷命令方式: 
在.bashrc 中设置命令别名: 


代码如下:alias lsl='ls -lrt' 
alias lm='ls -al|more' 
这样,使用lsl,就可以显示目录中的文件按照修改时间排序;以列表方式显示; 
注:.bashrc 在/home/你的用户名/ 文件夹下,以隐藏文件的方式存储;可使用 ls -a 查看; 

查找目录及文件 find/locate
搜寻文件或目录: 



代码如下:$find ./ -name "core" | xargs file 
查找目标文件夹中是否有obj文件: 


代码如下:$find ./ -name '.o' 
递归当前目录及子目录删除所有.o文件: 


代码如下:$find ./ -name "*.o" -exec rm {} \; 
find是实时查找,如果需要更快的查询,可试试locate;locate会为文件系统建立索引数据库,如果有文件更新,需要定期执行更新命令来更新索引库; 



代码如下:$locate string
寻找包含有string的路径 


代码如下:$updatedb 
与find不同,locate并不是实时查找。你需要更新数据库,以获得最新的文件索引信息。 

查看文件内容
查看文件:


代码如下:cat vi head tail more 


代码如下:$cat -n:显示时同时显示行号 


代码如下:$ls -al |more:一页一页显示列表内容; 


代码如下:$head - 10 **:只看前10行 


代码如下:$head -1 filename显示文件第一行 


代码如下:$tail -5 filename显示文件倒数第五行 


代码如下:$diff file1 file2查看两个文件间的差别 


代码如下:$tail -f crawler.log动态显示文本最新信息 

查找文件内容



代码如下:
egrep '03.1\/CO\/AE' TSF_STAT_111130.log.012 
egrep 'A_LSHA777:C' TSF_STAT_111130.log.035 > co.out2 
co.out35: egrep 'A_LSHA777:C' TSF_STAT_111130.log.035 > co.out35 

文件与目录权限修改


代码如下:chown:改变文件的拥有者 


代码如下:chmod:改变文件读、写、执行等属性 
递归子目录修改:

代码如下:chown -R tuxapp source/ 
增加脚本可执行权限:

代码如下:chmod a+x my
给文件增加别名
创建符号链接/硬链接: 



代码如下:ln cc ccAgain:硬连接;删除一个,将仍能找到; 


代码如下:ln -s cc ccTo:符号链接(软链接);删除源,另一个无法使用;(后面一个ccTo 为新建的文件) 

管道和重定向
批处理命令连接执行: 
串联: 使用分号 ; 
前面成功,则执行后面一条,否则,不执行:&& 
前面失败,则后一条执行: || 
eg: 



代码如下:
ls /proc && echo suss! || echo failed. 

能够提示命名是否执行成功or失败; 
与上述相同效果的是: 


代码如下:
if ls /proc; then echo suss; else echo fail; fi

重定向: 


代码如下:ls proc/.c > list > &l将结果输出到list,将错误输出到同一个文件末尾; 
等价的是:

代码如下:ls proc/.c &> list


代码如下:ls list1 list2:可同时列出多个文件; 

清空文件: :> a.txt 
重定向:最佳文本: echo aa >> a.txt 

设置环境变量
启动帐号后自动执行的是 文件为 .profile,然后通过这个文件可设置自己的环境变量; 
安装的软件路径一般需要加入到path中: 



代码如下:
PATH=$APPDIR:/opt/app/soft/bin:$PATH:/usr/local/bin:$TUXDIR/bin:$ORACLE_HOME/bin;export PATH 

Bash快捷输入或删除
快捷键: 
Ctl-U 删除光标到行首的所有字符,在某些设置下,删除全行 
Ctl-W 删除当前光标到前边的最近一个空格之间的字符 
Ctl-H backspace,删除光标前边的字符 
Ctl-R: 匹配最相近的一个文件,然后输出 

综合应用



代码如下:
cat -v record.log | grep AAA |grep -v BBB |wc -l 

查找record.log中包含AAA,但不包含BBB的记录的总数

关键字:Linux、磁盘管理、数据库
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站