Linux常用的命令(二)

1.grep命令

用于查找文件中的特定字符串。该命令通常与管道命令一起使用,用于对一些命令的输出进行筛选加工等。

基本语法:grep [-acinv] [–color=auto] ‘查找字符串’ filename

常用参数:
-a :将binary文件以text文件的方式查找数据
-c :计算找到‘查找字符串’的次数
-i :忽略大小写的区别,即把大小写视为相同
-v :反向选择,即显示出没有‘查找字符串’内容的那一行

例如:

# 取出文件/etc/man.config中包含MANPATH的行,并把找到的关键字加上颜色

grep –color=auto ‘MANPATH’ /etc/man.config

# 把ls -l的输出中包含字母file(不区分大小写)的内容输出

ls -l | grep -i file

2.find命令

用于查找符合一定条件的文件。

基本语法:find [PATH] [option] [action]

1)与时间有关的参数:

-mtime n : n为数字,意思为在n天之前的“一天内”被更改过的文件;
-mtime +n : 列出在n天之前(不含n天本身)被更改过的文件名;
-mtime -n : 列出在n天之内(含n天本身)被更改过的文件名;
-newer file : 列出比file还要新的文件名

例如:

find /root -mtime 0 # 在当前目录下查找今天之内有改动的文件

2)与用户或用户组名有关的参数:

-user name : 列出文件所有者为name的文件
-group name : 列出文件所属用户组为name的文件
-uid n : 列出文件所有者为用户ID为n的文件
-gid n : 列出文件所属用户组为用户组ID为n的文件

例如:

find /home/ljianhui -user ljianhui # 在目录/home/ljianhui中找出所有者为ljianhui的文件

3)与文件权限及名称有关的参数:

-name filename :找出文件名为filename的文件
-size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件
-tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);
-perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;
-perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示
-perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示

例如:

  • find / -name passwd # 查找文件名为passwd的文件
  • find . -perm 0755 # 查找当前目录中文件权限的0755的文件
  • find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte

3.ps命令

用于输出某时刻的进程运行情况,ps即process。

常用参数:
-A :所有的进程均显示出来
-a :不与terminal有关的所有进程
-u :有效用户的相关进程
-x :一般与a参数一起使用,可列出较完整的信息
-l :较长,较详细地将PID的信息列出

常用:
ps aux # 查看系统所有的进程数据
ps ax # 查看不与terminal有关的所有进程
ps -lA # 查看系统所有的进程数据

4.kill命令

用于向某个工作(%jobnumber)或某个PID(数字)传送一个信号,通常与ps和jobs命令一起使用。

基本语法: kill -signal PID

signal的常用参数:
注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。
-SIGHUP,启动被终止的进程
-SIGINT,相当于输入ctrl+c,中断一个程序的进行
-SIGKILL,强制中断一个进程的进行
-SIGTERM,以正常的结束进程方式来终止进程
-SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行

例如:

# 以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程。

kill -SIGTERM %1

# 重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得。

kill -SIGHUP PID

5.killall命令

基本语法:killall [-iIe] [command name]

常用参数:
-i :交互式的意思,若需要删除时,会询问用户
-e :表示后面接的command name要一致,但command name不能超过15个字符
-I :命令名称忽略大小写

例如:

killall -SIGHUP syslogd # 重新启动syslogd

6.file命令

用于判断文件的类型。(Linux下文件的类型不是以文件后缀为区分)

基本语法:file filename

例如:

file ./filename

7.tar命令

它会调用相应的压缩程序(如gzip和bzip等)进行压缩、解压以及查看压缩包内容。

常用参数:
-c :新建打包文件
-t :查看打包文件的内容含有哪些文件名
-x :解打包或解压缩的功能,可以搭配-C(大写)指定解压的目录,注意-c,-t,-x不能同时出现在同一条命令中
-j :通过bzip2的支持进行压缩/解压缩
-z :通过gzip的支持进行压缩/解压缩
-v :在压缩/解压缩过程中,将正在处理的文件名显示出来
-f filename :filename为要处理的文件
-C dir :指定压缩/解压缩的目录dir

常用:(以压缩程序为bzip2为例)
压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称
查询:tar -jtv -f filename.tar.bz2
解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录


8.cat命令

用于查看文本文件的内容。通常可用管道与more和less一起使用,从而可以一页页地查看数据。

例如:

cat text | less # 查看text文件中的内容
# 注:这条命令也可以使用less text来代替

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

7 + 2 =