Linux特点:免费,开源,安全,高效,稳定,处理高并发非常强悍。
Linux世界里,一切皆文件。
Linux的文件系统是采用级层式的树状目录结构。
具体可见:
Linux 系统目录结构
XShell 5能够远程访问Linux系统的前提是,Linux启用了SSHD服务,该服务会监听22号端口
- 一般模式
- 命令行模式
- 编辑模式
快捷键 | 含义 | 模式 | 备注 |
---|---|---|---|
yy |
复制当前行 | 一般模式 | |
nyy |
复制当前行及向下的共计n行 | 一般模式 | |
p |
粘贴 | 一般模式 | |
dd |
删除当前行 | 一般模式 | |
ndd |
删除当前行及向下的共计n行 | 一般模式 | |
/单词 |
在文件中查找某个单词 | 命令行模式 | 输入n继续查找下一个 |
:set nu 和:set nonu |
设置文件的行号和取消文件的行号 | 命令行模式 | |
gg |
到首行 | 一般模式 | |
G |
到末行 | 一般模式 | |
u |
撤销动作 | 一般模式 | |
n shift+g |
到第n行 | 一般模式 |
指令 | 含义 |
---|---|
shutdown -h now |
立即关机 |
shutdown -h 1 |
1分钟后关机 |
shutdown -r now |
1分钟后重启 |
halt |
关机 |
init 0 |
关机 |
reboot |
重启 |
sync |
把内存的数据同步到磁盘 |
不管是重启还是关机,首先要运行sync指令,以防数据丢失。
/home/
目录下有各个创建的用户对应的家目录,当用户登录时,会自动进入自己的家目录。
指令 | 含义 |
---|---|
useradd 用户 |
添加用户 |
useradd -d 目录 用户 |
|
passwd 用户 |
修改用户密码 |
指令 | 含义 |
---|---|
userdel 用户 |
删除用户但保留家目录 |
userdel -r 用户 |
删除用户及家目录 |
指令 | 含义 |
---|---|
su - 用户 |
切换用户 |
exit |
切换到上一个用户 |
指令 | 含义 | 备注 |
---|---|---|
id 用户 |
查询用户信息 | |
whoami |
查看当前用户 | |
who am i |
查看当前用户 |
指令 | 含义 | 备注 |
---|---|---|
logout |
注销当前用户 | 该指令在图形运行级别无效,在运行级别3有效 |
指令 | 含义 | 备注 |
---|---|---|
groupadd 用户组 |
创建组 | |
groupdel 用户组 |
删除组 | |
useradd -g 用户组 用户 |
添加用户并将用户添加到指定组 | |
usermod -g 用户组 用户 |
将用户修改到指定组 |
/etc/shadow口令配置文件。
/etc/passwd用户配置文件。
/etc/group组配置文件。
指令 | 含义 | 备注 |
---|---|---|
man 指令 |
获取帮助信息 | |
help 指令 |
获取shell内置命令的帮助信息 |
功能:显示当前工作目录的绝对路径。
功能:显示指定工作目录下之内容。
语法:ls [选项] 目录或文件
常用选项:
-a
显示当前目录的所有文件和目录,包括隐藏的。-l
以列表的方式显示详细信息。
功能:切换当前目录。
常用参数
cd
返回家目录cd ~
返回家目录cd ..
回到当前目录的上一级目录
功能:创建目录
语法:mkdir [选项] 要创建的目录
常用选项:
-p
创建多级目录
功能:删除空目录
语法:rmdir 目录
功能:删除文件或目录
语法:rm [选项] 文件或目录
常用选项:
-r
递归删除整个文件夹
-f
强制删除,不提示
功能:新建一到多个文件
语法:mkdir 文件1 [文件2,文件3...]
功能:拷贝文件到指定目录
语法:cp [选项] source dest
常用选项:
-r
递归整个文件夹注意:使用
\cp
,可以强制覆盖,不提示
功能:移动文件与目录,或者重命名
语法1:mv source dest
语法2:mv 旧名 新名
功能:查看文件内容,只读。
语法:cat [选项] 文件
常用选项:
-n
显示行号技巧: 通常和管道命令
| more
一起使用,分页显示
功能:全屏、按页显示文本文件内容
语法:more 文件
more指令内置了若干快捷键
快捷键 | 含义 |
---|---|
空格 |
向下翻一页 |
Enter |
向下翻一行 |
q |
退出more |
ctrl+B |
向上翻一屏 |
ctrl+F |
向下翻一屏 |
= |
输出当前行的行号 |
:f |
输出文件名和当前行的行号 |
功能:分屏查看文本文件内容。
说明:less
的功能比more
强大,它在显示文件内容时,不是全部加载后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高效率。
语法:less 文件
less指令内置了若干快捷键
快捷键 | 含义 |
---|---|
空格 |
向下翻一页 |
[pagedown] |
向下翻一页 |
[pageup] |
向上翻一页 |
/字符串 |
向下查找字符串 |
?字符串 |
向上查找字符串 |
q |
退出less |
功能:
>
表示覆盖,>>
表示追加。将前者覆盖或追加到后者,若后者不存在,则创建。
案例:
ls > 文件
将ls显示的内容覆盖写入到文件,若该文件不存在,则创建文件cat 文件1 > 文件2
将文件1的内容覆盖文件2echo "内容" >> 文件
将内容追加到文件
功能:输出内容到控制台。
语法:echo "内容"
功能:显示文件前几行内容,默认10行。
语法:head 文件
常用选项:
head -n x 文件
显示前x行
功能:显示文件后几行内容,默认10行。
语法:tail 文件
常用选项:
-n x
显示后x行-f
实时监控文件变化
功能:软链接也叫符号链接,类似windows快捷键
语法:ln -s [原文件或目录] [软链接名]
说明:
- 使用
pwd
查看目录时,看到的仍然是软链接所在的目录
功能:查看或执行历史命令
语法:history
案例:
history n
显示最近执行的n条命令!n
执行第n条历史命令
功能:查看和设置时间日期
查看语法:
date
查看当前时间date "+%Y年%m月%d日 %H:%M:%S"
查看年月日时分秒*(其中的年月日以及冒号可以自由写,并且,也可以只显示一部分时间信息)*设置语法:
date -s "年-月-日 时:分:秒"
设置时间
功能:查看日历
语法:cal [选项]
案例:
cal 年份
显示该年日历
功能:从指定目录向下遍历其各个子目录,将满足条件的目录或文件显示在终端
语法:find 搜索范围 选项
选项 | 功能 | 备注 |
---|---|---|
-name<文件名> |
按文件名查找 | <> 内为选项的参数 |
-user<用户名> |
按文件所属用户查找 | |
-size<文件大小> |
按文件大小查找 | 单位为M、k |
(按ctrl+c
可以退出查找)
功能:快速定位文件路径
语法:locate 文件
说明:
- 第一次运行前,必须使用
updatedb
指令创建locate数据库
功能:过滤查找
语法:grep [选项] 查找内容 源文件
常用选项:
i
忽略大小写n
显示匹配行和行号
功能:将
|
前的命令处理结果,输出给后面的命令来处理
案例:
cat 文件 | grep -ni 内容
功能:
gizp
压缩(只能压缩为.gz格式)
,gunzip
解压
语法:
gzip 文件
压缩gunzip 文件
解压注意:用
gzip
压缩不会保留源文件
功能:
zip
压缩,unzip
解压
语法:
zip [选项] 压缩后的文件 压缩前的为文件
压缩文件或目录unzip [选项] 要解压的文件
解压
zip
选项:
-r
递归压缩,即压缩目录
unzip
选项:
-d
指定解压后的存放目录
功能:打包指令,打包后的文件为.tar.gz格式
语法:tar [选项] 打包后的文件 打包前的文件
说明:-zcvf
压缩,-zxvf
解压
选项:
c
产生.tar打包文件v
显示详细信息f
指定压缩后的文件名z
打包同时压缩x
解包.tar文件
指令 | 含义 |
---|---|
chgrp 组 文件 |
修改文件所在组 |
chown 用户 文件 |
修改文件所有者 |
chown 用户:组 文件 |
修改文件所有者和所在组 |
选项:
-R
:所有的后代目录和文件均生效符号 | 文件类型 |
---|---|
- |
普通文件 |
d |
目录 |
l |
软链接 |
c |
字符设备(键盘、鼠标) |
b |
块文件(硬盘) |
作用到文件:
符号 | 含义 | |
---|---|---|
[r] |
可读 | |
[w] |
可写 | 但不代表可以删除该文件,前提是文件所在目录有写的权限 |
[x] |
可执行 |
作用到目录:
符号 | 含义 |
---|---|
[r] |
可读,可使用ls 查看目录内容 |
[w] |
可在目录内修改、创建,重命名目录 |
[x] |
可进入目录 |
功能:修改文件权限
语法:chmod 权限设置 文件目录名
说明:a
所有者,g
所在组,o
其他组,a
全部人
方法:
- 通过
+-=
。如a+w
,a-w
,a=r-x
- 直接通过数字。如:751表示rwx -wx --x
任务调度:定期执行脚本或代码。(对于简单的任务,可直接在crontab中加入任务,对于复杂的任务,需要写脚本)
语法:
crontab [选项]
选项:
-e
编辑crontab任务-l
查询crontab任务-r
删除当前用户的所有crontab任务service crond restart
重启任务调度
字符 | 含义 |
---|---|
* |
代表任何时间 |
, |
代表不连续的时间范围 |
- |
代表连续的时间范围 |
*/n |
表示间隔频 |
案例: 每隔一分钟,将当前日期信息写入 /tmp/mydate
mbr分区
gtp分区
Linux硬盘分为IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。
驱动器标识符:
hd
表示IDE硬盘,sd
表示SCSI硬盘;a
为基本盘,b
为基本从属盘,c
辅助主盘,d
辅助从属盘;步骤:
- 虚拟机添加硬盘
- 分区
- 格式化
- 挂载
- 永久挂载:修改
vim /etc/fstab
,mount -a
立即生效
指令 | 含义 |
---|---|
fdisk /dev/sdb |
分区 |
mkfs -t 分区类型 设备名称 |
格式化 |
mount 设备名称 挂载目录 |
挂载 |
umouont 设备名或挂载目录 |
卸载 |
指令 | 含义 | 常用选项 |
---|---|---|
df -h |
查看系统整体磁盘使用情况 | |
du [选项] 目录 |
查看指定目录磁盘使用情况 | --max-depth=1 子目录深度,-a 含文件,-c 列出明细的同时增加汇总值,-h 带计量单位,-s 指定目录占用大小汇总 |
ls -l | grep "^-" | wc -l
查看文件夹下文件个数ls -lR | grep "^-" | wc -l
查看文件夹下文件个数(包括子文件夹里的文件)tree 目录
以树状结构显示目录
可以使用ping 目的主机
测试当前服务器是否可以连接目的主机
① 方法一:自动获取IP
缺点:每次自动获取的IP可能不同,这个不适合用做服务器。
② 方法二:指定固定IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
,修改后重启机器生效,可使用service network restart
重启网络服务。
功能:显示当前系统正在执行的进程
语法:ps [选项]
选项:
-a
当前终端的所有进程信息-u
以用户格式显示进程信息-x
显示后台进程运行的参数-ef
显示父进程说明:可以使用
ps -aux | grep 指定服务
来查看是否有指定服务
信息选项说明:
功能:终止进程
语法:
kill [选项] 进程号
killall 进程名称
(支持通配符)
选项:-9
强制终止
功能:查看进程树
语法:pstree [选项]
选项:
-p
显示进程的PID-u
显示进程的所属用户
功能:管理服务
语法:service 服务名 [start|stop|restart|reload|status]
说明:
- Centos7.0以后使用的是
systemctl
指令;- 可以使用
telnet ip 端口
检测某端口是否在监听- 该指令是立马生效,也是临时生效的*(重启后恢复以前设置)*
setup
指令查看/etc/init.d/
系统运行级别的配置文件/etc/inittab,切换运行级别的命令为init [123456]
运行级别 | 说明 | 备注 |
---|---|---|
0 | 关机 | |
1 | 单用户 | root权限,可用于修改密码 |
2 | 多用户状态无网络服务 | |
3 | 多用户状态有网络服务 | |
4 | 系统未使用,保留 | |
5 | 图形界面 | |
6 | 系统重启 |
使用单用户模式修改root密码:
功能:查询或设置服务的各运行级别是否自启动或关闭
说明:使用该指令需要重启机器生效
指令 | 含义 | 备注 |
---|---|---|
chkconfig --level 运行级别 服务名 on/off |
自启动或关闭服务 | 不写--level 运行级别 则表示设置所有的运行级别 |
chkconfig 服务名 --list |
查看某服务的开关情况 | 不写服务名 则表示查看所有服务 |
功能:动态监控进程
语法:top[选项]
选项:
-d 秒数
每隔几秒更新,默认三秒-i
不显示闲置或僵死进程-p
通过指定进程id来监控某个进程案例:
- 监视特定用户:输入
top
,然后按u
,输入用户名- 终止指定进程:输入
top
,然后按k
,输入进程id
交互操作:
交互操作 | 含义 |
---|---|
P |
以CPU使用率排序(默认) |
M |
以内存使用率排序 |
N |
以PID排序 |
q |
退出top |
功能:查看系统网络情况
语法:netstat [选项]
说明:一般写``netstat -anp`
选项:
an
按一定顺序排列输出p
显示哪个进程正在调用
RPM,RedHat Package Manager(RedHat软件包管理工具),类似windows的setup.exe
指令 | 含义 | 备注 |
---|---|---|
rpm -qa | grep xxx |
查询已安装的软件包列表 | |
rpm -q 软件包名 |
查询软件包是否安装 | |
rpm -qi 软件包名 |
查询软件包信息 | |
rpm -ql 软件包名 |
查询软件包中的文件 | |
rpm -qf 文件全路径 |
查询文件所属的软件包 | |
rpm -e 软件包名 |
卸载软件包 | |
rpm -e --nodeps 软件包名 |
强制卸载软件包 | 不推荐 |
rpm -ivh 安装包全路径名称 |
安装软件包 | i Install安装,v verbose提示,h hash进度条 |
YUM,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,一次性安装所有依赖的软件包。
使用yum的前提是可以联网
指令 | 含义 |
---|---|
yum list | grep xx |
查询软件列表 |
yum install xx |
下载安装 |