【知识回顾整理1】Linux系统操作知识

1.文件系统

万物皆文件

Linux系统文件分隔符 /

windows系统文件分割符 \

相对路径中: ./ 表示当前目录 …/表示上一层文件目录

文件分类:

​ 普通文件:各类数据文件

​ 目录文件:即文件夹,只允许管理员对其进行修改,程序只能用不能改

​ 设备文件:系统把每个设备映射为一个文件,用于向IO提供连接的文件,分字符设备和块设备

​ 管道文件:用于进程间的通信

​ 链接文件:类似win快捷方式,可分为软连接和硬连接

文件权限:

​ 读:r --4

​ 写:w --2

​ 执行:x --1

2.常用命令

命令使用格式:

​ command [-option] [parameter1] …

空格隔开(空格数量无限制)

多个option间可以不用加空格

2.1帮助

命令 选项 功能 实例
–help 查看命令的使用帮助 ls --help
命令 选项 功能 实例
man 1 2 3 4 5 6 7 8 查看命令的使用手册 man 1 ls
默认为1
1表示标准命令 2表示系统调用 3表示库函数 4设备文件说明
5文件格式 6游戏和娱乐 7杂项、惯例与协定等 8管理员命令

2.2文件管理

(1)ls 查看文件信息
命令 选项 选项含义 功能 实例
ls -a all 显示指定目录下所有子目录及文件(包含隐藏) ls -a
-l list? 以列表的方式显示文件的详细信息 ls -l
-h human readable 配合 -l 以人性化的方式显示文件的大小 ls -l -h或者ls -lh
la ls -a
ll ls -la
通配符 含义 实例 实例含义
* 所有字符(256个以下) ls t*e 查找以t开头结尾的文件
代表文件名中任意一个字符 ls a.? 查找3个字符的文件前两个字符为a.
[] 表示字符数组中任意一个 ls [a-d]* 查找以a-d开头的文件
\ 转义字符,将通配符变成普通字符 ls \*a 查找名为*a的文件
(2)> 输出重定向

将命令输出结果重定向到一个文件中

命令 功能 实例 实例含义
> 输出重定向 ls > a.txt 将ls将要显示是内容保存到a.txt中,覆盖
>> ls >> a.txt 追加
(3)| 管道

一个命令的输出通过管道作为另一个命令的输入

命令 功能 实例 实例含义
| 一个命令的输出通过管道作为另一个命令的输入 ls | grep a 查看当前目录并查看a
(4)cd 切换工作目录
命令 功能
cd ~ 到用户主目录
cd . 切换当前目录
cd … 切换到上一级目录
cd - 切换至上一步所在目录
pwd Print Working Directory 打印当前目录路径
(5)mkdir 目录
命令 功能 参数 实例 实例含义
mkdir make directory创建目录 -p mkdir -p a/b/c 递归创建目录a/b/c
rmdir remove directory删除目录,目录必须为空 rmdir c 删除目录c
rm 删除文件 -i 交互式删除 -r 删除文件夹 -f 强制删除
(6)ln 建立链接

软链接:类似快捷方式,不占内存,源文件删除则失效 ln -s 源文件 链接文件

硬链接:只能链接普通文件不能链接目录,占内存,类似copy但能始终与源文件保存一致 ln 源文件 链接文件

类型 说明 格式 注意
软链接 类似快捷方式,不占内存,源文件删除则失效 ln -s 源文件 链接文件 不再同一路径下不能使用相对路径
硬链接 占内存,类似copy但能始终与源文件保存一致 ln 源文件 链接文件 只能链接普通文件不能链接目录
(7)cat 查看文件
cat a 查看a内容
cat a b > c 把a b 内容合并到c
(8)grep 搜索

Globally search a Regular Expression and Print 在全局范围内搜索正则表达和打印

grep ‘搜索内容串’ 文件名

参数 实例 实例含义
grep ‘abc’ a.txt 搜索a.txt中包含‘abc’的内容,打印所有行
-v grep -v ‘abc’ a.txt 搜索a.txt中不包含‘abc’的内容,打印所有行
-n grep -n ‘ab’ a.txt 额外显示匹配行及行号
-i grep -i ‘a’ a.txt 忽略大小写

grep 搜索内容可以是正则表达式

grep常用正则表达式

参数 实例 含义
^a grep -n ‘^a’ a.txt 行首,搜索以a开头的行
a$ grep -n ‘a$’ a.txt 行尾,搜索以a结尾的行
[Ss]igna[Ll] grep -n ‘[Ss]igna[Ll]’ a.txt 匹配[]内所有字符中的一个,即搜索signal首尾字母大小写均可
. grep -n x.x a.txt 点代表任意一个字符
* grep -n x*x a.txt 任意个任意字符,可以换行
(9)wc 计算文件行或字数

wc=word count?

实例 含义
wc a.txt 输出a.txt文件的行数、字数、字节数
wc -l a.txt 查看a.txt的行数
wc -w a.txt 查看a.txt的字数。一个字被定义为空格、换行分割的字符串
wc -c a.txt 查看a.txt的字节数
wc -m a.txt 查看a.txt的字符数,不能与-c一起使用
(10)find 查找文件

通常用来在特定的目录下搜索符合条件的文件

命令 含义
find ./ -name test.sh 查找当前目录下所有名为test.sh的文件
find /tmp -size 2M 查找/tmp文件下大小为2M的文件
find /tmp -size +2M 查找/tmp文件下大小大于2M的文件
find /tmp -size -2M 查找/tmp文件下大小小于2M的文件
find …/ -size +4k -size -5M 查找上一级文件夹下大小大于4k小于5M的文件
find ./ -perm 777 查找当前目录下权限为777的文件或目录
(11)cp 拷贝

cp [选项] [源文件] [目标文件]

选项 实例 含义
-a cp /a ~/b 拷贝a文件夹到主目录b文件夹中,保持文件原有属性进行拷贝(常用于文件夹拷贝)
-f cp test /d -f 删除已经存在的目标文件而不提示
-i 交互式复制,在覆盖目标文件前会给出提示
-r 递归复制文件夹,目标文件必须为一个目录
-v 显示拷贝进度
(12)mv 移动

mv [选项] [源文件] [目标文件]

可用来重命名

选项 含义 实例
-f 禁止交互操作,即时覆盖也不提示
-i 交互式操作
-v 显示移动进度
(13)file 获取文件类型

file 文件

(14)tar 归档管理

tar [选项] 文件名 文件

选项 实例 含义
-c creat tar -cf a.tar a.txt b.txt c.txt 生成档案文件,创建打包文件,没有进行压缩
-v verbose 显示详细过程,显示进度
-f file 指定档案文件名,其后一定要接.tar文件必须放选项最后
-t list 列出档案中包含的文件
-x extract tar -xf a.tar 解开档案文件
-C tar -xvf a.tar.gz -C ./test/ 解压到指定目录
打包 解包
tar -cvf 生成的包.tar 待打包文件1 待打包文件2… tar -xvf 待解包名.tar
(15)gzip 文件压缩解压
压缩 解压
gzip -r a gzip -d a.zip
tar cvzf 压缩包名称 文件1 文件2 … 指定压缩包的格式为:压缩文件名称.tar.gz
tar zxvf 压缩包包名 指定压缩包的格式为:压缩文件名称.tar.gz
zip -r 目标文件 源文件 压缩文件
unzip -d 解压后目录文件 压缩文件 解压文件

2.3用户权限管理

指令 实例 含义
which which ls 查看ls指令位的位置
whoami whoami 查看当前用户
who who 查看登陆用户
exit exit 退出
su su 或者su - 切换root用户 su - 会停留在当前路径
su 用户名A 切换到用户A
last last 查看最后登陆的用户
chmod chmod [u/g/o/a] [+/-/=] rwx 文件名 修改文件权限
chmod 777 文件名
chown chown 用户名 文件或目录 修改文件所有者
chgrp chgrp 用户组名 文件或目录 修改文件所属组

2.4系统管理

指令 实例 含义
cal cal 查看当前日历
date date [MMDDhhmm[[CC]YY][.ss]]+format 设置时间格式(需要管理员权限)
format格式 : %H %M %S 时 分 秒
ps ps 查看进程信息
ps -a 显示终端上的所有进程,包括其它用户的进程
ps -u 显示进程的详细状态
ps -x 显示没有控制终端的进程
ps -w 显示加宽,以便显示更多的信息
ps -r 只显示正在运行的进程
top top 动态显示进程
kill kill [选项] 进程ID 终止进程
kill -9 进程ID 强制终止进程
init init 0 关机
init 6 重启
df 检测磁盘空间
df -a 显示所有文件系统的磁盘使用情况
df -m 以1024字节为单位显示
df -t 显示各指定文件系统的磁盘使用情况
df -T 显示文件系统
du du [选项] 目录或文件名 检测目录所占磁盘空间
rmp rmp [选项] 软件包 软件安装与卸载
-i 安装
-e 卸载
apt-get sudo apt-get update 获取最新软件包的列表
sudo apt-get install 软件包 从源安装软件
sudo apt-get remove 软件包 卸载软件
ifconfig ifconfig 查看网卡信息
ping ping ip地址 测试远程主机连通性

3.vim使用

vim有输入模式和命令模式

常用命令

按键 功能
命令模式下
1.进入插入模式
a 光标位置右侧插入文字
i 光标位置当前处插入文字
o(字母) 光标位置下方开始新行
O(字母) 光标位置上方开始新行
I 光标所在行首插入文字
A 光标所在行尾插入文字
2.退出vim
ZZ(shift+z+z) 保存退出
:x 保存退出
:wq 保存退出
:q 退出,会提示是否保存修改
:q! 退出不保存
:!命令 暂时离开vim,执行命令
3.删除和修改
:w 文件名 保存到指定文件
[n]x 删除光标后n个字符
[n]X 删除光标前n个字符
D 删除光标所在位置到此行结尾的字符
[n]dd 删除当前行开始的n行(准确来说是剪切下来)
[n]yy 负责当前行开始的n行
p 把剪切板的内容粘贴到当前行
dG 删除光标位置开始到文件尾的所有内容
J 合并两行
. 执行上一次操作
u 撤销上一次操作
4.行定位
ctrl+f 向前滚动一个屏幕
ctrl+b 向后滚动一个屏幕
gg 到文件行首
G 到文件最后一行行首
到文件最后一行行首
nG 到低n行
/内容 查找指定内容
5.文本查找功能
/字符串 查找字符串
n 寻找下一个
N 回到前一个
寻找上一个
/^字符串 查找以字符串开始的行
/$字符串 查找以字符串结尾的行
/a.b 查找字符串a任意字符b
6.替换功能
r 替换当前光标字符
:r 文件名 在光标当前位置下一行载入另一个文件
/p1/p2/g 将当前行中所有的p1替换为p2
:g/p1/s//p2/g 将文件中所有的的p1替换为p2
:n1,n2s/p1/p2/g 将n1到n2行中所有的的p1替换为p2
7.set指令
:set ic 搜索时不区分大小写
:set noic 搜索时区分大小写
:set nu 显示行号
:set nonu 不显示行号

4.远程操作

SSH Secure Shell

操作命令 含义
ssh -l username hostip -l(字母l) username 被远程登陆的用户名,hostip远程登陆的ip
scp FileName RemoteUserName@RemoteHostIp:RemoteFile 远程传输文件

你可能感兴趣的:(linux)