Linux常用命令(二)

本章内容:

  • 搜索命令
  • 压缩和解压缩命令
  • 关机和重启命令
  • 常用网络命令
  • 系统痕迹命令
  • 挂载命令

一、搜索命令

1.whereis命令

 whereis是搜索系统命令的命令,也就是说 ,whereis命令不能搜索普通文件,而只能搜索系统命令,其基本信息如下。

1.命令名称:whereis

2.所在路径:/usr/bin/whereis

3.执行权限:所以用户

4.功能描述:查找二进制命令、源文件和帮助文档的命令

 2.which命令

 which和whereis的区别:

1.whereis命令可以在查找二进制命令的同时,查找到帮助文档的位置;

2.which命令在查找到二进制命令的同时,如果这个命令有别名,则还可以找到别名命令

which是搜索系统命令的命令,其基本信息如下。

1.命令名称:which

2.所在路径:/usr/bin/which

3.执行权限:所以用户

4.功能描述:列出命令的所在路径

 3.locate命令

 基本用法:

locate命令才是可以按照文件名搜索普通文件的命令。

优点:

按照数据库搜索,搜索速度快,消耗资源小。数据库位置/var/lib/mlocate/mlocate.db,updatedb强制更新数据库,方便查找。

缺点:

只能按照文件名搜索文件,而不是执行更复杂的搜索,比如按照权限、大小、修改时间等搜索文件。

locate命令是按照文件名进行搜索文件的命令,其基本信息如下。

1.命令名称:locate

2.所在路径:/usr/bin/locate

3.执行权限:所以用户

4.功能描述:按照文件名搜索文件

4.find命令

 find命令是在目录中搜索文件,其基本信息如下。

1.命令名称:find

2.所在路径:/bin/find

3.执行权限:所以用户

4.功能描述:在目录中搜索文件

按照文件名搜索

find 搜索路径  [ 选项 ]  搜索内容

选项:

-name:按照文件名搜索

-iname:按照文件名搜索,不区分文件名大小写

-inum:按照Inode号搜索

按照文件大小搜索

find 搜索路径  [ 选项 ]  搜索内容

选项:

-size[ + | - ]:按照指定大小搜索文件

这里的“+”的意思是搜索比指定大小还要大的文件,“-”的意思是搜索比指定大小还要小的文件。

按照修改时间搜索

Linux中的文件有访问时间(atime)、数据修改时间(mtime)、状态修改时间(ctime)这三个时间,我们也可以按照时间来搜索文件。

find 搜索路径  [ 选项 ]  搜索内容

选项:

-atime[ + | - ]:按照文件访问时间搜索

-mtime[ + | - ]:按照文件数据修改时间搜索

-ctime[ + | - ]:按照文件状态修改时间搜索

这里用mtime数据修改时间来举例,重点说下“+ -”时间的含义、

-5:代表5天内修改的文件。

5:代表前5~6天那一天修改的文件。

+5:代表6天前修改的文件。

 按照权限搜索

find 搜索路径  [ 选项 ]  搜索内容

选项:

-perm  权限模式:查找文件权限刚好等于“权限模式”的文件

-perm  - 权限模式:查找文件权限全部包含“权限模式”的文件

-perm  + 权限模式:查找文件权限包含“权限模式”的任意一个权限的文件

按照所有者和所属组搜索

find 搜索路径 [ 选项 ]  搜索内容

选项:

-uid 用户ID:按照用户ID查找所有者是指定ID的文件

-gid 组 ID:按照用户组ID查找所属组是指定ID的文件

-user 用户名:按照用户名查找所有者是指定用户的文件

-group 组名:按照组名查找所属组是指定用户组的文件

-nouser:查找没有所有者的文件

按照所有者和所属组搜索是,“-nouser”选项比较常用,主要用不查找垃圾文件。

只有一种情况例外,那就是外来文件。比如光盘和U盘中的文件如果是由Windows复制的,在Linux中查看就是没有所有者的文件;在比如手工源码包安装的文件,也有肯没有所有者。

按照文件类型搜索

find 搜索路径 [ 选项 ]  搜索内容

选项:

-type d:查找目录

-type f:查找普通文件

-type l:查找软链接文件

逻辑运算符

find 搜索路径 [ 选项 ]  搜索内容

选项:

-a:and逻辑与

-a代表逻辑与运算,也就是-a的两个条件都成立,find搜索的结果才成立。例如:

-o:or逻辑或

-o代表逻辑或运算,也就是-o的两个条件只要其中一个成立,find命令就可以找到结果。

-not:not逻辑非

-not代表逻辑非运算,也就是取反的意思。

其他选项

这里我们主要讲解两个选项“-exec”和“-ok”,这两个选项的基本作用非常相似。

1.-exec选项

find 搜索路径 [ 选项 ]  搜索内容  -exec 命令2 {  }  \

其次,这个选项的作用其实是把find命令的结果交给由“-exec”调用的命令2来处理。“{  }”就是代表find命令的查找结果。

2.-ok选项

“-ok”选项和“-exec”选项的作用基本一致,区别在于:“-exec”的命令2会直接处理,而不询问;“-ok”的命令2在处理前先会询问用户是否这样处理,在得到确定命令后,才会执行。

5.grep命令

grep的作用是在文件中提取和匹配符合条件的字符串行。

命令格式:grep [ 选项 ]  “搜索内容”  文件名

选项:

-i:忽略大小写

-n:输出行号

-v:反向查找

--color=auto:搜索出的关键字用颜色显示

find命令和grep命令的区别:

find命令用于在系统中搜索符合条件的文件名,如果需要模糊查询,则使用通配符进行匹配,搜索时文件名是完全匹配的(find命令可以通过-regex选项,把匹配规则转为正则表达式规则,但是不建议如此)。

grep命令用于在文件中搜索符合条件的字符串,如果需要模糊查询,则使用正则表达式进行匹配,搜索时字符串是包含匹配的。

通配符与正则表达式的区别:

通配符:用于匹配文件名,完全匹配

通配符 作用
匹配一个任意字符
* 匹配0个或任意多个任意字符,也就是可以匹配任何内容
[] 匹配中括号中任意一个字符。例如:[ abc ]代表一定匹配一个字符,或者a、或者b、或者c
[-] 匹配中括号中任意一个字符,-代表一个范围。例如[ a-z ]代表匹配一个小写字母
[^] 逻辑非,表示匹配不是中括号内的一个字符。例如:[ ^0-9 ]代表匹配一个不是数字的字符

正则表达式:用于匹配字符串,包含匹配

正则符 作用
匹配前一个字符重复0次,或一次
* 匹配全一个字符重复0次,或者任意多次
[] 匹配中括号中任意一个字符。例如:[ abc ]代表一定匹配一个字符,或者a、或者b、或者c
[-] 匹配中括号中任意一个字符,-代表一个范围。例如:[ a-z ]代表匹配一个小写字母
[^] 逻辑非,表示匹配不是括号内的一个字符。例如:[ ^0-9 ]代表匹配一个不是数字的字符
^ 匹配行首
$ 匹配行尾

6.管道符

命令格式: 命令1 | 命令2

命令1的正确输出作为命令2的操作对象

7.命令的别名

命令的别名,就是命令的小名,主要是用于照顾管理员的使用习惯的。

命令格式:alias 别名=“原命令”

用命令定义的别名,是临时生效的,想要永久生效,需要写入系统环境变量配置文件~/.bashrc

8.常用快键键

快键键 作用
Tab键 命令或文件不去
ctrl+A 把光标移动到命令行开头。如果我们输入的命令过长,想要把光标移动到命令行开头时使用
ctrl+E 把光标移动到命令行结尾
ctrl+C 强制终止当前的命令
ctrl+L 清屏,相当于clear命令
ctrl+U 删除或剪切光标之前的命令。我们输入了一行很长的命令,不用使用退格键一个一个字符的删除,使用这个快键键会更加方便
ctrl+Y 粘贴ctrl+U剪切的内容

二、压缩和解压缩命令

 Linux中可以识别的常见压缩格式有十几种,比如“.zip”、“.gz”、“.bz2”、“.tar”、“.tar.gz”、“.tar.bz2”等。

1.“.zip”格式

“.zip”是Windows中常用的压缩格式。Linux也可以正确识别“.zip”格式,这可以方便的和Windows系统通用压缩文件。

zip是压缩命令,其基本信息如下。

1.命令名称:zip

2.所在路劲:/usr/bin/zip

3.执行权限:所有用户

4.功能描述:压缩文件或目录

命令格式:zip [ 选项 ]  压缩包名  源文件或源目录

选项:

-r:压缩目录

unzip是解压命令,其基本信息如下。

1.命令名称:unzip

2.所在路劲:/usr/bin/unzip

3.执行权限:所用用户

4.功能描述:列表、测试和提取压缩文件中的文件

命令格式:unzip [ 选项 ]  压缩包名

选项:

-d:指定解压缩位置

2.“.gz”格式(不会打包)

“.gz”格式是Linux中最常用的压缩命令。

gzip是压缩命令,其基本信息如下。

1.命令名称:gzip

2.所在路劲:/bin/gzip

3.执行权限:所有影虎

4.功能描述:压缩文件或目录

命令格式:gzip [ 选项 ]  源文件

选项:

-c:将压缩数据输出到标准输出中,可以用于保留源文件

-d:解压缩

-r:压缩目录

gunzip和gzip -d是解压命令,其基本信息如下。

1.命令名称:gunzip、gzip -d

2.所在路劲:/bin/gunzip

3.执行权限:所有用户

4.功能描述:解压缩文件或目录

3.“.bz2”格式

“.bz2”格式是Linux的另一种压缩格式,理论上来讲,“.bz2”格式算法更先进、压缩比更好,而“.gz”格式相对来讲压缩的时间更快。

bzip2是压缩命令,其基本信息如下。

1.命令名称:bzip2

2.所在路劲:/usr/bin/bzip2

3.执行权限:所有用户

4.功能描述:.bz2格式的压缩命令

命令格式:bzip2 [ 选项 ]  源文件

选项:

-d:解压缩

-k:压缩时,保留源文件

-v:显示压缩的详细信息

bunzip2和bzip2 -d是解压命令,其基本信息如下。

1.命令名称:bunzip2、bzip2 -d

2.所在路劲:/usr/bin/bunzip2

3.执行权限:所有用户

4.功能描述:.bz2格式的解压缩命令

4.“.tar”格式(打包不压缩)

“.tar”格式的打包和解打包都使用tar命令,区别只是选项不同,其基本信息如下。

命令名称:tar

所在路劲:/bin/tar

执行权限:所有用户

功能描述:打包与解打包命令

打包命令格式:tar [ 选项 ]  [ -f 压缩包名 ]  源文件或目录

选项:

-c:打包

-f:指定压缩包的文件名。压缩包的扩展名是用来管理员识别格式的,所以一定要正确指定扩展名

-v:显示打包文件过程

解打包命令格式:tar [ 选项 ]  压缩包

选项:

-x:解打包

-f:指定压缩包的文件名

-v:显示解打包文件过程

-t:测试,就是不解打包,只是查看包中有哪些文件

-C(大)目录:指定解打包位置

5.“.tar.gz”和“.tar.bz2”

使用tar命令直接打包压缩。

命令格式:tar [ 选项 ]  压缩包 源文件或目录

选项:

-z:压缩和解压缩“.tar.gz”格式

-j:压缩和解压缩“.tar.bz2”格式

三、关机和重启命令

1.sync数据同步

1.命令名称:sync

2.所在路劲:/bin/sync

3.执行权限:所有用户

4.功能描述:刷新文件系统缓存区

2.shutdown命令

1.命令名称:shutdown

2.所在路劲:/sbin/shutdown

3.执行权限:超级用户

4.功能描述:关机和重启

命令格式:shutdown [ 选项 ]  时间 [ 警告信息 ]

选项:

-c:取消已经执行的shutdown命令

-h:关机

-r:重启

3.reboot命令

在现在的系统中,reboot命令也是安全的,而且不需要加入过多的选项。

4.halt和poweroff命令

这两个都是关机命令,直接执行即可。

这两个命令不会完整关闭和保存系统的服务,不建议使用。

5.init命令

init是修改Linux运行级别的命令,也可以用于关机和重启。

这个命令并不安全,不建议使用。

四、常用网络命令

1.配置IP地址

IP地址是计算机在互联网中唯一的地址编码。每台计算机如果需要接入网络和其他计算机进行数据通信,就必须配置唯一的公网IP地址。

配置IP地址有两种方法:

  • setup工具(CentOS6)
  • vi /etc/sysconfig/network-scripts/ifcfg-eth0 手动修改配置文件

重启网络服务:

service network restart

2.ifconfig命令

ifconfig是查看和配置网络接口的命令,其基本信息如下。

1.命令名称:ifconfig

2.所在路劲:/sbin/ifconfig

3.执行权限:超级用户

4.功能描述:查看和配置网络接口

ifconfig命令最主要的作用就是查看IP地址信息,直接输入ifconfig命令即可。

3.ping命令

ping命令是常用的网络命令,主要通过ICMP协议进行网络探测,测试网络中主机的通信情况,其基本信息如下。

1.命令名称:ping

2.所在路劲:/bin/ping

3.执行权限:所有用户

4.功能描述:像网络主机发送ICMP请求

命令格式:ping [ 选项 ]  IP

选项:

-b:后面加入广播地址,用于对整个网段进行探测

-c 次数:用于指定ping的次数

-s 字节:指定探测包的大小

4.netstat命令

netstat是网络状态查看命令,既可以查看到本机开启的端口,也可以查看有哪些客户端连接,其基本信息如下。

1.命令名称:netstat

2.所在路劲:/bin/netstat

3.执行权限:所有用户

4.功能描述:输出网络连接、路由表、接口统计、伪装连接和组播成员

命令格式:netstat [ 选项 ]

选项:

-a:列出所有网络状态,包括Socket程序

-c 秒数:指定每隔几秒刷新一次网络状态

-n:使用IP地址和端口号显示,不适用域名与服务名

-p:显示PID和程序名

-t:显示使用TCP协议端口的连接状况

-u:显示使用UDP协议端口的连接状况

-l:仅显示监听状态的连接

-r:显示路由表

-m:查看网关

5.write命令

write命令是向指定用户发送信息,其基本信息如下。

1.命令名称:write

2.所在路劲:/usr/bin/write

3.执行权限:所有用户

4.功能描述:向指定用户发送信息

6.wall命令

write命令用于给指定用户发送信息,而wall命令用于给所有登录用户发送信息,包括自己,执行时,在wall命令后加入需要发送的信息,即可。

7.mail命令

mail是Linux的邮件客户端命令,可以利用这个命令给其他用户发送邮件,其基本信息如下。

1.命令名称:mail

2.所在路劲:/bin/mail

3.执行权限:所有用户

4.功能描述:发送和接收电子邮件

五、系统痕迹命令

系统中有一些重要的痕迹日志文件,如/var/log/wtmp、/var/run/utmp、/var/log/btmp、/var/log/lastlog等日志文件,如果用vim打开这些文件,会发现这些文件是二进制乱码。这是由于这些日志中保存的是系统的重要登录痕迹,包括某个用户何时登录了系统,何时退出系统,错误登录等重要的系统信息。这些信息要是可以通过vim打开,就能编辑,这样痕迹信息就不准确,所以这些重要的痕迹日志,只能通过对应的命令来进行查看。

1.w命令

w命令是显示系统中正在登录的用户信息的命令,这个命令查看的日志痕迹是/var/run/utmp,其基本信息如下。

1.命令名称:w

2.所在路径:/usr/bin/w

3.执行权限:所有用户

4.功能描述:显示登录用户和正在做什么

第一行信息,内容如下:

内容 说明
23:21:15 系统当前时间
up 12 min 系统运行时间,本机已经运行12分钟
1 user 当前登录了一个用户
load average:0.00,0.00,0.00 系统在之前1分钟,5分钟,15分钟的平均负载

第二行信息,内容如下:

内容 说明
USER 当前登录的用户
TTY

登录的终端

tty1-6:本地字符终端(alt+F1-6切换)

tty7:本地图形终端(ctrl+alt+F7切换,必须安装启动图形界面)

pts/0-255:远程终端

FROM 登录的IP地址,如果是本地终端,则是空
LOGIN@ 登录时间
IDLE 用户闲置时间
JCPU 所有的进程占用的CPU时间
PCPU 当前进程占用的CPU时间
WHAT 用户正在进行的操作

2.who命令

who命令是用于查看正在登录的用户,但是显示的内容更加简单,也是查看/var/run/ytmp日志。

3.last命令

last命令是查看系统所有登陆过的用户信息的,包括正在登录的用户和之前登录的用户,查看的是/var/log/wtmp痕迹日志文件。

4.lastlog命令

lastlog命令是查看系统中所有用户最后一次的登录时间的命令,查看的日志是/var/log/lastlog文件。

5.lastb命令

lastb命令是查看错误登录信息的,查看的是/var/log/btmp痕迹日志。

六、挂载命令

1.mount命令

Linux所有存储设备都必须挂载使用,包括硬盘,其基本信息如下。

1.命令名称:mount

2.所在路径:/bin/mount

3.执行权限:所有用户

命令格式:mount [ -t 文件系统 ]  [ -L卷标名 ]  [ -o特殊选项 ]  设备文件名  挂载点

-t 文件系统:加入文件系统类型来指定挂载点的类型,可以ext3、ext4、iso9660等文件系统。

-L 卷标名:挂载指定卷标的分区,而不是安装设备文件名挂载

-o 特殊选项:可以指定挂载的额外选项,比如读写权限、同步异步等,如果不指定则默认值生效。

2.挂载光盘

光盘挂载的前提依然是指定光盘的设备名称,不同版本的Linux,设备文件名并不相同:

  • CentOS5.x以前的系统,光盘设备文件名是/dev/hdc
  • CentOS6.x以后的系统,光盘设备文件名是/dev/sr0

不论哪个系统都有软链接/dev/cdrom,与可以作为光盘的设备文件名

挂载:

mount -t ios9660 /dev/cdrom /mnt/cdrom

卸载:

umount  /dev/sr0

umount /munt/cdrom

注意:卸载的时候需要退出光盘目录,才能卸载

3.挂载U盘

U盘和硬盘共用设备文件名,所以U盘的设备文件名不是固定的,需要手工查询,查询命令如下:

挂载命令:

mount -t vfat -o iocharset=utf8 /dev/sdb /mnt/usb

卸载:

umount /mnt/usb

4.挂载NTFS分区

使用第三方的文件系统模块进行挂载。

软件名称:NTFS-3G

下载地址以及文档:https://www.tuxera.com/community/open-source-ntfs-3g/

posted @ 2019-11-19 09:28  薛大少  阅读(302)  评论(0编辑  收藏  举报