常用Linux命令

(1) ls命令

ls –a列出目录所有文件,包括以.开始的隐藏文件

ls –A列出除. ..的其他文件

ls –r反序排列

ls –t以文件修改时间排序

ls –S以文件大小排序

ls –h以一度大小显示

ls –l除了文件明个之外,还将文件的权限、所有者、文件大小等信息详细列出来

(1)按易读方式按时间范旭排序,并显示文件详细信息
      ls -lhrt

(2)按大小反序显示文件详细信息
      ls -lrs

(3)列出当前目录中所有以“t”开头的目录的详细内容
      ls –l t*

(4)列出文件绝对路径(不包含隐藏文件)
      ls | sed “s:^:’pwd’/:”

(5)列出文件绝对路径(包含隐藏文件)
      find $pwd –maxdepth 1 | xargs ls –d


(2) cd命令

进入要目录                                              cd /

进入“家”目录                                           cd ~

进入上一个工作目录                               cd -

把上个命令的参数作为cd参数使用        cd !$


(3) pwd命令

查看当前路径                                         pwd

查看软连接的实际路径                          pwd -P


(4) mkdir命令

可用选项:

-m对新建目录设置存取权限,也可以用chmod命令设置

-p可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好

当前工作目录下创建名为t的文件夹
   mkdir t

在tmp目录下创建理解为test/t1/t的目录,若不存在,则创建
   mkdir –p /tmp/test/t1/t


(5)rm命令

删除一个目录中的一个或多个文件或目录,如果没有使用-r选项,则rm不会删除目录(如果使用rm来删除文件,通常仍可以将该文件恢复原状)

(1)删除任何.log文件;删除前逐一询问确认
    rm –I *.log

(2)删除test子目录及子目录中所有档案,并且不用一一确认
    rm –rf test

(3)删除以-f开头的文件
    rm -- -f*


(6)find命令

find pathname –options [-print –exec –ok …] 

pathname : find命令所查找的目录路径,例如用.来表示当前系统,用/来表示系统根目录

-print : find命令将匹配的文件输出到标准输出

-exec : find命令对匹配的文件执行该参数所给出的shell命令,相应命令的形式为’command’{} \:, 注意{}\;之间的空格

-ok:和-exec的作用相同,只不过以一种更加安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行

 

-name按照文件名查找文件

-perm按文件权限来查找文件

-user按文件属主查找文件

-group按照文件所属的组来查找文件

-type查找某一类型的文件

 

b—块设备文件

d—目录

c—字符设备文件

l—符号链接文件

p—管道文件

f—普通文件

 

-size n : [c]查找文件长度为n块文件,带有c时表文件字节大小

-anim n :查找系统中最后N分钟访问的文件

-atime n :查找系统中最后n* 24小时访问的文件

-cmin n :查找系统中最后N分钟被改变文件状态的文件

-ctime n :查找系统中最后n* 24小时被改变文件状态的文件

-mmin n :查找系统中最后N分钟被改变文件数据的文件

-mtime n :查找系统中最后n*24小时被改变文件数据的文件

(用-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件)

-maxdepth n最大查找目录深度

-prune选项来指出需要忽略的目录,在使用-prune选项时要当心,因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略

-newer如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件

(1)查找48小时内修改过的文件
    fnd –atime -2

(2)在当前目录查找以.log结尾的文件。“.”代表当前目录
    find ./ -name ‘*.log’

(3)查找/opt目录下权限为777的文件
    fnd /opt –perm 777

(4)查找大于1k的文件
    fnd –size +1000c
    find –size 1000c 查找等于1000字符的文件

(5)在当前目录中查找更改时间在10日以前的文件并删除它们(无提醒)
    find . –type f –mtime +10 –exec rm –f {} \;

(6)当前目录中查找所有文件名以.log结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示。按y键删除文件,按n键不删除
    find . –name ‘*.log’ mtime +5 –ok –exec rm {} \;

(7)当前目录下查找文件名以password开头,内容包含“pkg”字符的文件
    find . –name ‘passwd’ –exec grep “pkg” {} \;

(8)用exec选项执行cp命令
    find . –name ‘*.log’ –exec cp {} test3 \;

(9)查找当前目录下每个普通文件,然后使用xargs来判断文件类型
    find –type f –print | xargs file

(10)查找当前目录下所有以js结尾的并且其中包含’editor’字符的普通文件
    find –type f –name “*.js” –exec  grep –lf ‘ueditor’ {} \;
    find –type f –name ‘*.js’ | xargs grep –lf ‘editor’ 

(11)利用xargs执行mv命令
    find . –name “*.log” | xargs –I mv {} test4

(12)用grep命令在当前目录下的所有普通文件中搜索hostname这个词,并标出所在行
    find . –name \*(转义)-type f –print | xargs grep –n ‘hostnames’

(13)查找当前目录中以一个小写字母开头,最后是4到9加上.log结束的文件
    find . –name ‘[a-z’]*[4-9].log’ -print

(14)在test目录查找不在test4目录查找
    find test –path ‘test3/test4’ –prune –o -print

(15)查找更改时间比文件log2012.log新但比文件log2017.log旧的文件
    find –newer log2012.log ! –newer log2017.log

depth可以使find命令向磁带上备份文件系统时,希望首先备份所有的文件,其次再备份目录中的文件
    find 命令从文件系统哦能否的跟目录开始,查找一个名为CON.FILE的文件。它将首先匹配所有的文件然后再进入自目录中查找
    find / -name “CON.FILE” –depth -print


(7) grep命令

文本搜索命令

-A n --after-context显示匹配字符后n

-B n --before-context显示匹配字符前n

-C n –context显示匹配字符前后n

-c –count计算符合样式的列数

-i忽略大小写

-l只列出文件内容符合指定的样式的文件名称

-f从文件中读取关键词

-n显示匹配内容的文件中行数

-R递归查找文件夹


Grep的规则表达式

^   #锚定行的开始如:’grep’匹配所有以grep开头的行

$   #锚定行的结束如:’grep$’匹配所有以grep结尾的行

.    #匹配一个非换行的字符如:’gr.p’匹配gr后接一个任意字符,然后是p

*    #匹配另个或多个先前字符如:’*grep’匹配所有一个或多个空格后紧跟grep的行

.*   #一起用代表任意字符

[]   #匹配一个指定范围内的字符,如’[Gg]rep’匹配Grepgrep

[^]     #匹配一个不在指定范围内的字符,如:’[^A-FH-Z]rep’匹配不包含A-FT-Z的一个字母开头,紧跟rep的行

\(..\)   #标记匹配字符,如’\(love\)’love被标记为1

\<      #锚定单词的开始 如’\<grep’匹配包含以grep开头的单词的行

\>      #锚定单词的开始 如’\<grep’匹配包含以grep结尾的单词的行

x\{m\}     #重复字符x, m次,如: ‘0\{5\}’匹配包含50的行

x\{m,\}    #重复字符x至少m次, 如:’o\{5,\}’匹配至少有5o的行

x\{m,n\}  #重复字符x至少m次,不多于n次,如’o\{5,10\}’匹配5~10o

\w     #匹配文字和数字字符,也就是[A-Za-z0-9],如:’G\w*p’匹配以G后跟零个或多个文字或数字字符,然后是p

\W    #\w的反置形式,匹配一个或多个非单词字符,如点号句号等

\b     #单词锁定符,如:’\bgrep\b’只匹配grep

(1)查找指定线程
    Ps –ef | grep svn

(2)查找指定进程个数
    Ps –ef | grep svn –c

(3)从文件中读取关键词
    Cat test1.txt | grep –f key.log

(4)从文件中递归查找以grep开头的行,并只列出文件
    Grep –IR ‘^grep’ /tmp

(5)查找非x开头的行内容
    Grep ‘^[^x]’ test.txt

(6)显示包含Ed或者at字符的内容行
    Grep –E ‘ed|at’ test.txt




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值