知识点1【Linux命令的概述】
准备
cd ~ #进入家目录 mkdir tools work #创建tools和work文件夹 cd work #进入work目录
Linux 命令是一组用于与 Linux 操作系统进行交互的工具集合,通过在终端中 输入命令来执行各种任务和操作。
Linux命令的格式:命令 【选项】 【参数】
命令:代表的是命令的名称
选项:扩展命令的功能 默认以-开头
参数:改变命令的作用目标
知识点2【Linux的目录结构】
Linux以树状管理目录结构,最外层的目录为根目录"/".
/home/edu/work /左边没有任何东西 这个/就是根目录 /home/edu ./home/edu
知识点3【Linux命令的帮助信息】
1、--help 只能查看命令的帮助信息
2、man 查看命令、库函数、系统调用
库函数:语言 提供好的直接可用的函数
系统调用:内核 提供的可以直接访问内核资源的函数。
以章节来管理:
第一章节 存放的是命令 man 1 ls
第二章节 存放系统调用 man 2 open
记得安装编译套件(sudo apt install build-essential)
sudo apt-get update sudo apt-get install build-essential
第三章节 存放的是库函数 man 3 strcpy
知识点4【Linux常用命令】
1、自动补全 tab
例:ifconfig 输入 if 按两下 tab 键 输入 ifc 按 tab 键
2、历史命令 history
通过上下的方向键 可以查看以前输入的命令:
3、重定向 > >> (重要)
比如:echo "hello world"将字符串输出到终端上
echo "hello world" > a.c
将字符串"hello world"输出到文件a.c中
>覆盖源文件的内容。
>>在源文件的末尾自动追加一行。
4、管道 | (重要)
ps -A:将系统的所有进程显示到终端上。
grep hello:从终端输入的内容中查字符串hello。
cat a.c将a.c的内容直接显示到终端上。不能编辑a.c
cat a.c | grep hello #grep从a.c中查找hello字符串
5、ls查看当前目录的内容(不能查看子文件夹的内容)
-a 显示所有内容(显示隐藏文件 以.开头的文件)
-l 以列表的形式显示文件信息(一行代表一个文件)
-h 一般配合-l一起使用 以更人性化的方式显示大小
-a -l -h三个可以随意组合 没有顺序:-alh -lha -lah
6、tree 以树状结构显示目录信息
sudo apt-get update sudo apt-get install tree
tree默认显示所有子目录文件,如果只想显示两层 -L 2
7、clear 清屏
8、cd 切换目录(重要)
cd 命令用于切换工作目录:cd [目录路径]
cd - 回到上一次的路径(相当于 windows 下的后退) cd .. 切换到上一级路径(相当于 windows 下的返回上一级) cd ~ 回到家目录下
cd /home/edu/b/d cd ~/b/d cd ../../b/d
9、pwd 显示当前工作目录的绝对路径
10、cat 显示文本文件内容
11、rm 删除文件或目录(重要)
1、rm删除文件
rm 文件名
2、rm删除文件夹 加-r
rm 目录名 -r
3、删除所有以.c结尾的文件
rm *.c
rm *.* -r 删除所有带.的文件(当前目录) rm * -r 删除所有文件
4、如果强制删除一个文件 -f
危险:sudo rm /* -rf
12、cp拷贝(重要)
1、cp 文件名 目录名
将“文件名”拷贝到“目录名”中
2、cp 文件名1 文件名2
将文件名1 备份一份为文件名2
3、cp 目录名1 目录名2(存在) -r
将 目录名1 拷贝到 目录名2中 记得加-r
4、cp 目录名1 目录名2(不存在)-r
将 目录名1 备份为目录名2(备份文件夹)
13、mv 移动文件或目录
13.1 mv 文件名1 目录名1
将文件名1 移动到 目录名1中
13.2 mv 文件名1 文件名2
将 文件名1 重命名为 文件名2
13.3 mv 目录名1 目录名2(存在)
将 目录名1 移动到目录名2中
13.4 mv 目录名1 目录名2(不存在)
将 目录名1 重命名 目录名2
14、mkdir 创建文件夹
15、touch创建文件
注意:touch只能创建文件 不能编辑文件
16、find查找指定文件(重要)
find 目录1 -name 文件名1 (从目录1中查找文件名1)
17、grep 在指定文件中查找指定内容
1、grep默认是从终端中获取内容查找
2、从文件中查找内容
3、从不确定的具体文件中查找
案例:从stdio.h中找printf声明的位置
18、ln链接文件
18.1 软链接
语法:ln -s 源文件 链接文件
操作源文件a.c或链接文件a_s 二者内容是同步的。
注意:(背)
1、a_s 为软链接 仅仅是a.c的快捷方式
2、如果删除源文件a.c 导致 a_s软链接文件将失效。
18.2 硬链接
语法:ln 源文件 链接文件
硬链接和源文件都是普通文件 只是二者内容时刻同步。
注意:(背)
1、硬链接和源文件都是普通文件 只是二者内容时刻同步。
2、删除源文件 不影响 硬链接文件。
19、tar 压缩与解压缩命令
tar命令仅仅是打包,需要额外的选项才能压缩和解压。
1、gzip 格式
1.1 压缩格式
tar zcvf 压缩包包名 文件 1 文件 2 ...
压缩包包名 最好以.tar.gz结尾。
1.2 解压格式
tar zxvf 压缩包包名
tar zxvf 压缩包包名 -C 解压到指定目录
2、bz2
2.1 压缩格式
tar jcvf 压缩包包名 文件 1 文件 2 ...
压缩包包名 最好以.tar.bz2结尾。
2.2 解压格式
tar jxvf 压缩包包名
tar jxvf 压缩包包名 -C 指定的目录
3、总结
gzip 压缩格式: tar -zcvf 压缩包名.tar.gz 被压缩的文件 gzip 解压格式: tar -zxvf 压缩包名.tar.gz gzip 解压格式: tar -zxvf 压缩包名.tar.gz -C 解压到指定位置 bz2 压缩格式: tar -jcvf 压缩包名.tar.bz2 被压缩的文件 bz2 解压格式: tar -jxvf 压缩包名.tar.bz2 bz2 解压格式: tar -jxvf 压缩包名.tar.bz2 -C 解压到指定位置
4、暴力解压
tar -xvf 压缩包名 tar -xvf 压缩包名 -C 解压到指定位置