1.学习前准备
1.1输入名令的前缀
在我们输入命令时前面会有这么一句话:shi@DESKTOP-RS264UT:~$ 这是什么意思呢?
shi -> 当前用户名
@ -> 机器标号
DESKTOP-RS264UT -> 当前的主机名
: -> 分隔符
~ -> 当前工作路径(简化为~)
$ -> 普通用户 #->超级用户
root@DESKTOP-RS264UT:/home/shi#这个就是超级用户下的前缀。
shi@DESKTOP-RS264UT:~$普通用户前缀。
1.2目录
~ ->当前用户的家目录的缩写
.->当前目录
..->上一级目录
/->根目录
1.3Linux系统下的文件种类
- 普通文件(mp3,avi,mp4,ppt...)
d 目录文件
p 管道文件(一般用于进程间通信)
l 链接文件(相当于快捷方式)
s 套接字文件(一般用于网络通信)
b 块设备文件(驱动设备文件由驱动生成)
c 字符设备文件(驱动设备文件由驱动生成)
1.4Linux目录与windows文件夹的区别
windows文件夹好比一个容器,文件文件夹的的确确放在了里面
Linux目录文件好比一个表,把这些文件列在这个表上,虽然里面看起来确实有文件,但是这些文件只是一种链接的形式在这个目录文件里。就好比指针我能够通过这个指针找到这个变量值但是这个第一眼看到的这个指针并不是这个变量的本身。
1.5快捷方式
在输入之前输过的命令可以按键盘的上和下进行切换(避免再次输入很长的命令)
清屏 ctrl+l 并不是真正意义上的清屏只是让页面只显示输入命令的哪一行
1.6如何切换为超级用户
sudo -s 一直是超级用户,想回到普通用户输入exit+回车
sudo 命令 临时成为超级用户并执行命令(推荐)
2.入门级指令
2.1pwd打印当前工作目录命令
2.2 cd切换工作路径命令
cd 直接切换到当前用户的家目录
cd / 切换到根目录
cd ~ 直接切换到当前用户的家目录
cd ..
cd ../../
cd ../../HHH/main 切换到上一级的上一级的HHH里的main目录文件下(相对路径)
cd /home/HHH/main 切换到家目录下HHH目录下的main目录
cd - 返回上一次所在路径
2.3 ls列举当前目录下的内容
ls
2.3.1文件详情信息怎么看?
d ->目录文件
rwxr-xr-x ->三个一组,从头开始分别表示文件拥有者,同组用户,其他用户的权限
利用功能里的数值我们就会很方便的更改文件的属性,在创建文件时我们也可以很方便的设置文件的属性。
2 ->文件的链接数(打开方式有2种)
root ->文件的拥有者
root ->所属小组
4096 ->文件大小
Nov 23 05:36 ->文件修改时间
media ->文件名
2.4 locate找已经存在文件的路径
2.4.1终端找不到locate命令的解决方法
shi@DESKTOP-RS264UT:~$ sudo -s ->第一步
root@DESKTOP-RS264UT:~# sudo apt update ->第二步
apt install mlocate ->安装locate
root@DESKTOP-RS264UT:~# exit
exit
shi@DESKTOP-RS264UT:~$ locate jiejie
/home/shi/shi5_10test/jiejie
2.4.2 find与locate的区别
2.5 clear 命令
2.6 cat 命令
2.7 head 命令
2.8 tail 命令
2.9 grep 命令
2.10 chmod 命令
2.11 cp 命令
语法
cp [options] source dest 或 cp [选项] 源文件 目标文件其中,source(源文件) 表示要复制的文件或目录的路径,dest(目标文件) 表示复制后的文件或目录的路径。这里的路径为绝对路径。
或
cp [options] source... directory
选项说明:
- -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于 dpR 参数组合。
- -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
-r
或--recursive
:用于复制目录及其所有的子目录和文件,如果要复制目录,需要使用该选项。-i
或--interactive
:在复制前提示确认,如果目标文件已存在,则会询问是否覆盖,回答 y 时目标文件将被覆盖。。-u
或--update
:仅复制源文件中更新时间较新的文件。-v
或--verbose
:显示详细的复制过程。-p
或--preserve
:保留源文件的权限、所有者和时间戳信息。-f
或--force
:强制复制,即使目标文件已存在也会覆盖,而且不给出提示。- -l:不复制文件,只是生成链接文件。
实例
将文件 file.txt 复制到目录 /path/to/destination/ 中:
cp file.txt /path/to/destination/
使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:
cp –r test/ newtest
注意:用户使用该指令复制目录时,必须使用参数 -r 或者 -R 。
复制文件,并在目标文件已存在时进行确认:
cp -i file.txt /path/to/destination/
2.12mv 移动命令
2.13 mkdir 命令
2.14 rm 命令
3.学习过程中命令扩充
3.1使用gcc来编译c文件
1 $ gcc Hello.c // 使用gcc 编译 Hello.c 并且默认生成一个名为 a.out的可执行文件
2 $ gcc Hello.c ‐o TieZhu // 使用gcc 编译
3 // Hello.c 并且指定生成名字为TieZhu 的可执行文件
4 $ gcc Hello.c ‐o TieZhu ‐v // ‐v 输出百编译的信息, 包括头文件寻找的路径
5 $ gcc Hello.c ‐o TieZhu ‐I/mnt/d/ ‐v // ‐I 指定头文件寻找的路径(在原本默认
的基础上添加)
6 $ gcc Hello.c ‐Wall // 输出所有的警告