LInux文件的常用命令
一、文本文件查看
> 重定向(覆盖原文件) >> 重定向(追加原文件)
查看 more,less,head,tail,cat,以及 grep
more 查看文件的内容
用法 more filename
less 作用/用法同 more
[more 最后一屏时自动退出,less 不自动退出,按 q 退出,也可以 ctrl+b 往前翻,ctrl+f 往后翻]
head 查看文件的前几行
head -3 filename (不一定是-3 哦,只是举个例子,查看前 3 行)
tail 查看文件的后几行
tail -5 filename (也不一定是-5,只是举个例子,查看后 5 行)
cat 把文件的内容连接起来打印到终端或者用 > 覆盖到另一个文件
cat 文件 1 文件 2 ...文件 n (直接把 n 个文件的内容连接起来输出在屏幕上) cat 文件 1 文件 2 ...文件 n > 文件 n+1(把 n 个文件连接成一个新文件) 示例如下 --> echo aa > aa.txt echo bb > bb.txt cat aa.txt bb.txt > cc.txt
more cc.txt (看一下cc.txt文件的结果)
grep 匹配文件中的行 grep 判断字 文件 grep adm /etc/passwd ,会把/etc/passwd 文件中含有 adm 的行打印出来 more a.txt|grep china, 把本来要输出 a.txt 的内容,交给 grep 再匹配,匹配含有 china 的行.
二、文件打包压缩及解压
rar 请到:http://www.rarsoft.com/download.htm 下载!解压后请将 rar_static 拷贝到/usr/bin 目录(其他由$PATH 环境变量指定的目录也可以)
.tar
解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName # 注:tar 是打包,不是压缩!
注:如果不想看打包的具体过程,可以用 tar cf filenamt.tar dirname;
.gz 和 .tar.gz
.gz 解压 1:gunzip FileName.gz 解压 2:gzip -d FileName.gz 压缩:gzip FileName 压缩且不删除源文件: gzip -c FileName > FileName.gz .tar.gz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirName
.bz2 和 .tar.bz2
.bz2 解压 1:bzip2 -d FileName.bz2 解压 2:bunzip2 FileName.bz2 压缩: bzip2 -z FileName .tar.bz2 解压:tar jxvf FileName.tar.bz2 压缩:tar jcvf FileName.tar.bz2 DirName
.bz 和 .tar.bz
.bz 解压 1:bzip2 -d FileName.bz 解压 2:bunzip2 FileName.bz 压缩:未知 .tar.bz 解压:tar jxvf FileName.tar.bz 压缩:未知
.Z 和 .tar.Z
.Z 解压:uncompress FileName.Z 压缩:compress FileName .tar.Z 解压:tar Zxvf FileName.tar.Z 压缩:tar Zcvf FileName.tar.Z DirName
.tgz 和 .tar.tgz
.tgz 解压:tar zxvf FileName.tgz 压缩:未知 .tar.tgz 解压:tar zxvf FileName.tar.tgz 压缩:tar zcvf FileName.tar.tgz FileName
.zip
.zip 解压:unzip FileName.zip 压缩:zip FileName.zip DirName
.rar
.rar 解压:rar a FileName.rar 压缩:rar e FileName.rar
三、文件查找
find / -name httpd.conf
这个命令语法看起来很容易就明白了,就是直接在 find 后面写上 -name,表明要求系统按照文件名查找,最后写上 httpd.conf 这个目标文件名即可。稍等一会系统会在计算机屏幕上显示出查找结果列表:
/etc/httpd/conf/httpd.conf
这就是 httpd.conf 这个文件在 Linux 系统中的完整路径。查找成功。
如果输入以上查找命令后系统并没有显示出结果,那么不要以为系统没有执行 find / -name httpd.conf 命令,而可能是你的系统中没有安装 Apache 服务器,这时只要你安装了 Apache Web 服务器,然后再使用find / -name httpd.conf 就能找到这个配置文件了。
无错误查找技巧:
在 Linux 系统中普通用户户使用“find”命令来查询这些文件目录是,往往会出现"Permissiondenied."(禁止访问)字样。系统将无法查询到你想要的文件。为了避免这样的错误,我们可是使用转移错误提示的方法尝试着查找文件,输入
find / -name access_log 2>/dev/null
在 Linux 系统中普通用户户使用“find”命令来查询这些文件目录是,往往会出现"Permissiondenied."(禁止访问)字样。系统将无法查询到你想要的文件。为了避免这样的错误,我们可是使用转移错误提示的方法尝试着查找文件,输入
find /etc -name '*srm*'
这个命令表明了 Linux 系统将在/etc 整个目录中查找所有的包含有 srm 这 3 个字母的文件,比如absrmyz, tibc.srm 等等符合条件的文件都能显示出来。如果你还知道这个文件是由 srm 这 3 个字母打头的,那么我们还可以省略最前面的星号,命令如下:
find/etc -name 'srm*'
这是只有像 srmyz 这样的文件才被查找出来,象 absrmyz 或者 absrm 这样的文件都不符合要求,不被显示,这样查找文件的效率和可靠性就大大增强了。
根据文件的特征查询方法:
find / -amin -10 # 查找在系统中最后 10 分钟访问的文件 find / -atime -2 # 查找在系统中最后 48 小时访问的文件 find / -empty # 查找在系统中为空的文件或者文件夹 find / -group cat # 查找在系统中属于 groupcat 的文件 find / -mmin -5 # 查找在系统中最后 5 分钟里修改过的文件 find / -mtime -1 #查找在系统中最后 24 小时里修改过的文件 find / -nouser #查找在系统中属于作废用户的文件 find / -user fred #查找在系统中属于 FRED 这个用户的文件
下面的列表就是对 find 命令所可以指定文件的特征进行查找的部分条件。 在这里并没有列举所有的查找条件,参考有关 Linux 有关书籍可以知道所有 find 命令的查找函数。
-amin n 查找系统中最后 N 分钟访问的文件 -atime n 查找系统中最后 n*24 小时访问的文件 -cmin n 查找系统中最后 N 分钟被改变状态的文件 -ctime n 查找系统中最后 n*24 小时被改变状态的文件 -empty 查找系统中空白的文件,或空白的文件目录,或目录中没有子目录的文件夹 -false 查找系统中总是错误的文件 -fstype type 查找系统中存在于指定文件系统的文件,例如:ext2 . -gid n 查找系统中文件数字组 ID 为 n 的文件 -group gname 查找系统中文件属于 gnam 文件组,并且指定组和 ID 的文件
技巧: find 配合 grep 来查询含有某个关键词的文件
find /www -name “*.php” |xargs grep ‘mysql_connect’