空格键 显示手册页的下一屏
Enter键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出man命令
h 列出所有功能键
/word 搜索word字符串
History -c 清空
- 文件代表文件名中所有字符
ls te* 查找以te开头的文件
ls html 查找结尾为html的文件
? 代表文件名中任意一个字符
ls ?.c 只找第一个字符任意,后缀为.c的文件
ls a.? 只找只有3个字符,前2字符为a.,最后一个字符任意的文件
[] [”和“]”将字符组括起来,表示可以匹配字符组中的任意一个。“-”用于表示字符范围。
[abc] 匹配a、b、c中的任意一个
[a-f] 匹配从a到f范围内的的任意一个字符
ls [a-f] 找到从a到f范围内的的任意一个字符开头的文件
ls a-f 查找文件名为a-f的文件,当“-”处于方括号之外失去通配符的作用
\ 如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“”处于方括号内时不用使用转义字符就失去通配符的作用。
ls *a 查找文件名为a的文件
ls > test.txt test.txt 如果不存在,则创建,存在则覆盖其内容
>输出重定向会覆盖原来的内容,>>输出重定向则会追加到文件的尾部。
分屏显示:more 管道:| 清屏:clear
cd 省略目录,则默认切换到当前用户的主目录。
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 切换到当前目录
cd … 切换到上级目录
cd - 可进入上一个进入的目录
通过mkdir命令可以创建一个新的目录。参数-p可递归创建目录。
需要注意的是新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限。
可使用rmdir命令删除一个目录。必须离开目录,并且目录必须为空目录,不然提示删除失败。
可通过rm删除文件或目录。使用rm命令要小心,因为文件删除后不能恢复。为了防止文件误删,可以在rm后使用-i参数以逐个确认要删除的文件。
常用参数及含义如下表所示:
参数 含义
-i 以进行交互式方式执行
-f 强制删除,忽略不存在的文件,无需提示
-r 递归地删除目录下的内容,删除文件夹时必须加此参数
建立链接文件:ln
Linux链接文件类似于Windows下的快捷方式。
链接文件分为软链接和硬链接。
软链接:软链接不占用磁盘空间,源文件删除则软链接失效。
硬链接:硬链接只能链接普通文件,不能链接目录。
使用格式:
ln 源文件 链接文件
ln -s 源文件 链接文件
获取文件类型:file
归档管理:tar
-c 生成档案文件,创建打包文件
-v 列出归档解档的详细过程,显示进度
-f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后
-t 列出档案中包含的文件
-x 解开档案文件
除了f需要放在参数的最后,其它参数的顺序任意。
- 文件压缩解压:gzip
tar与gzip命令结合使用实现文件打包、压缩。
tar只负责打包文件,但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [选项] 被压缩文件
常用选项:
选项 含义
-d 解压
-r 压缩所有子目录
tar这个命令并没有压缩的功能,它只是一个打包的命令,但是在tar命令中增加一个选项(-z)可以调用gzip实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar cvzf 压缩包包名 文件1 文件2 …
tar -xvf new.tar.gz -C ./test/ 将 new.tar.gz 解压到当前目录
文件压缩解压:bzip2
tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样)。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz2。
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程。
压缩用法:tar jcvf 压缩包包名 文件…(tar jcvf bk.tar.bz2 *.c)
解压用法:tar jxvf 压缩包包名 (tar jxvf bk.tar.bz2)
文件压缩解压:zip、unzip
通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip。
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
解压文件:unzip -d 解压后目录文件 压缩文件
查看当前用户:whoami
whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息。
由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理。这时候就可以使用whoami来查看当前用户的身份。
查看登录用户:who
who命令用于查看当前所有登录系统的用户信息。
常用选项:
选项 含义
-m或am I 只显示运行who命令的用户名、登录终端和登录时间
-q或–count 只显示用户的登录账号和登录用户的数量
-u 在登录时间后显示该用户最后一次操作到当前的时间间隔
-u或–heading 显示列标题
w命令也可以查看登录当前系统的用户信息。与who命令相比,w命令的功能
-h 只显示运行who命令的用户名、登录终端和登录时间
-l 显示详细信息列表,此为预设值
-s 使用短列表,不显示用户登录时间、JCPU和PCPU时间
-u 忽略执行程序的名称,以及该程序的PCPU时间
退出登录账户: exit
切换用户:su
可以通过su命令切换用户,su后面可以加“-”。su和su –命令不同之处在于,su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录:
su 切换到root用户
su root 切换到root用户
su - 切换到root用户,同时切换目录到/root
su - root 切换到root用户,同时切换目录到/root
su 普通用户 切换到普通用户
su - 普通用户 切换到普通用户,同时切换普通用户所在的目录
查看或者合并文件内容:cat
文本搜索:grep
-v 显示不包含匹配文本的所有行(相当于求反)
-n 显示匹配行及行号
-i 忽略大小写
grep搜索内容串可以是正则表达式。
计算文件行数或字数:wc
查找文件:find
拷贝文件:cp
添加、删除组账号:groupadd、groupdel
groupadd 新建组账号
groupdel 组账号
修改用户所在组:usermod
使用方法:usermod -g 用户组 用户名
添加用户账号:useradd
设置用户密码:passwd
删除用户:userdel
查询用户登录情况:last
修改文件权限:chmod
字母法:chmod u/g/o/a +/-/= rwx 文件
[ u/g/o/a ] 含义
u user 表示该文件的所有者
g group 表示与该文件的所有者属于同一组( group )者,即用户组
o other 表示其他以外的人
a all 表示这三者皆是
[ ±= ] 含义
- 增加权限
- 撤销权限
rwx 含义
r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。
chmod g=x file设置文件file的同组用户的权限为可执行,同时去除读、写权限:
r 读取权限,数字代号为 “4”
w 写入权限,数字代号为 “2”
x 执行权限,数字代号为 “1”
- 不具任何权限,数字代号为 “0”
chmod 777 test/ -R 递归 test 目录下所有文件加 777 权限。
修改文件所有者:chown
修改文件所属组:chgrp
查看当前日历:cal
显示或设置时间:date
查看进程信息:ps
-a 显示终端上的所有进程,包括其他用户的进程
-u 显示进程的详细状态
-x 显示没有控制终端的进程
-w 显示加宽,以便显示更多的信息
-r 只显示正在运行的进程
动态显示进程:top
M 根据内存使用量来排序
P 根据CPU占有率来排序
T 根据进程运行时间的长短来排序
U 可以根据后面输入的用户名来筛选进程
K 可以根据后面输入的PID来杀死进程。
q 退出
h 获得帮助
终止进程:kill
kill [-signal] pid
信号值从0到15,其中9为绝对终止,可以处理一般信号无法终止的进程。
后台程序:&、jobs、fg
用户可以将一个前台执行的程序调入后台执行,方法为:命令 &
如果程序已经在执行,ctrl+z可以将程序调入后台
jobs查看后台运行程序
fg编号(编号为通过jobs查看的编号),将后台运行程序调出到前台
关机重启:reboot、shutdown、init
命令 含义
reboot 重新启动操作系统
shutdown –r now 重新启动操作系统,shutdown会给别的用户提示
shutdown -h now 立刻关机,其中now相当于时间为0的状态
shutdown -h 20:25 系统在今天的20:25 会关机
shutdown -h +10 系统再过十分钟后自动关机
init 0 关机
init 6 重启
在redhat平台下,可通过命令进行切换:
init 3 切换到字符界面
init 5 切换到图形界面
通过快捷键切换(适用大部分平台):
Ctrl + Alt + F2 切换到字符界面
Ctrl + Alt + F7 切换到图形界面
检测磁盘空间:df
选项 含义
-a 显示所有文件系统的磁盘使用情况
-m 以1024字节为单位显示
-t 显示各指定文件系统的磁盘空间使用情况
-T 显示文件系统
检测目录所占磁盘空间:du
du命令用于统计目录或文件所占磁盘空间的大小,该命令的执行结果与df类似,du更侧重于磁盘的使用状况。
du命令的使用格式如下:
du [选项] 目录或文件名
选项 含义
-a 递归显示指定目录中各文件和子目录中文件占用的数据块
-s 显示指定文件或目录占用的数据块
-b 以字节为单位显示磁盘占用情况
-l 计算所有文件大小,对硬链接文件计算多次
格式化:mkfs
mkfs命令相当于DOS/Windows系统中的格式化命令,用于创建指定的文件系统。
使用格式如下:
mkfs [选项] 设备文件名 [blocks]
选项 含义
-V 详细显示模式
-t <.fs> 指定文件系统类型,默认值为 ext2
-c 在创建文件系统的同时,进行磁盘坏块检查
blocks 文件系统块的大小
应用软件安装和卸载
在 Linux 操作系统下,几乎所有的软件均通过RPM 进行安装、卸载及管理等操作。RPM 的全称为Redhat Package Manager ,是由Redhat公司提出的,用于管理Linux下软件包的软件。它是一种软件打包发行并且实现自动安装的程序,需要用rpm程序安装的软件包,其后缀是.rpm,并可以对这种程序包进行安装、卸装和维护。
rpm命令的使用格式如下:
rpm [选项] [软件包名]
选项 含义
-i 指定安装的软件包
-h 使用“#”显示详细的安装过程及进度
-v 显示安装的详细信息
-q 查询系统是否已安装指定的软件包
-a 查看系统已安装的所有软件包
-e 卸载软件包
–nodeps 配合-e参数使用,强制卸载不检查依赖项
–force 强制操作 如强制安装删除等
sudo apt-get update 获得最新的软件包的列表
sudo apt-get install xxx 从源中安装xxx软件
sudo apt-get remove xxx 删除xxx软件
查看或配置网卡信息:ifconfig
eth0 网络接口名称
Link encap 链路封装协议
Hwaddr 网络接口的MAC地址
Inet addr IP地址
Bcast 广播地址
Mask 子网掩码
UP 网络接口状态标识,UP已经启用,DOWN已经停用
BROADCAST 广播标识,标识网络接口是否支持广播
RUNNING 传输标识,标识网络接口是否已经开始传输分组数据
MULTICAST 多播标识,标识网络接口是否支持多播
MTU,Metric MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用
RX bytes 接收数据字节统计
TX bytes 发送数据字节统计
我们可以通过ifconfig配置网络参数:
只有root才能用ifconfig配置参数,其他用户只能查看网络配置
ifconfig 网络接口名称 [地址协议类型] [address] [参数]
地址协议类型如:inet(IPv4),inet6(IPv6)等
如:ifconfig eth0 inet 192.168.10.254 netmask 255.255.255.0 up
常用参数:
参数 功能
-a 显示所有网络接口状态
inet [IP地址] 设置IP地址
netmask [子网掩码] 设置子网掩码
up 启用网络接口
down 关闭网络接口
ifconfig配置的网络参数在内存中,计算机重新启动之后就失效了,如果需要持久有效就需要修改网络接口的配置文件:
redhat修改/etc/sysconfig/network-scripts/ifcfg-eth0文件
IPADDR=IP地址
GATEWAY=默认网关
ubuntu修改/etc/NetworkManager/system-connections/Wired connection 1文件
[ipv4]
method=manual
addresses1=IP地址;24;默认网关;
测试远程主机连通性:ping
ping通过ICMP协议向远程主机发送ECHO_REQUEST请求,期望主机回复ECHO_REPLY消息
通过ping命令可以检查是否与远程主机建立了TCP/IP连接
使用方法:ping [参数] 远程主机IP地址
参数 功能
-a 每次相应时都发出声音警示
-A 表示以实际往返相应时间为间隔,连续发送消息
-f 连续不断发送消息,不管是否收到相应
-n 只显示主机IP,不需要把IP解释成主机名
-c 发送指定次数数据报信息后停止,ping -c 5 192.168.10.254
-i 每次发送消息时间间隔,默认一秒,ping -i 2 192.168.10.254
-s 分组数据大小,默认56字节
-w 以秒为单位的超时值,一旦超时,就立即停止
网络路由设置:route
route可以增加,修改,显示路由信息,使用格式如下:
route [-v] [-A family] add default [gw 默认网关地址] [[dev interface]]
参数 功能
add 增加路由信息
del 删除路由信息
-v 显示路由信息
-A 指定网络协议inet(IPv4),inet6(IPv6)
gw 指定默认网关地址
dev 指定网络接口
监控网络状态:netstat
netstat命令监控网络状态,包括接口设置,IP路由,各种网络协议的统计,netstat输出信息说明如下:
字段 说明
Proto 协议,如:tcp,udp
Recv-Q 尚未读取的数据字节数
Send-Q 尚未发送的数据字节数
Local_address 本地主机地址与端口号
Foreign_address 远程主机与端口号
State 网络连接状态
RefCnt 引用计数,表示加接到相应套接字的进程数量
Flags 标志字段
Type 套接字类型,如:(SOCK_DGRAM, SOCK_STREAM,SOCK_RAW)
State 套接字状态
Path 套接字路径名
netstat常用命令参数:
参数 功能
-a 列出所有端口
-i 显示网络接口列表
-at 所有tcp端口
-au 所有udp端口
-l 所有监听端口
-lt tcp监听端口
-lu 指定网络接口
-s 显示所有协议统计信息
-r 当前路由状态
-p 输出中显示 PID 和进程名称,可以与其它开关一起使用,如:-pt
5.2.1 Linux平台相互远程
操作命令:ssh -l username hostip
参数 含义
-l 选项, 是字母“l”,不是数字“1”
username 被远程登录的用户名
hostip 被远程登录的ip地址