Linux 命令
- 一:linux的文件和目录结构
- 1. cd (change directory) 用于改变当前路径。(进入、切换到)
- 属主目录:也称为“家”目录。
- 2.pwd:用于查询当前完整的路径。
- 3.linux的文件和目录结构图:![在这里插入图片描述](https://img-blog.csdnimg.cn/20200605114347284.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80ODI2OTQwNg==,size_16,color_FFFFFF,t_70)
- 4.绝对路径与相对路径:
- 5.三场戏:
- 二:文件的复制、移动和删除:
- 操作小技巧:
- 三:查看文件内容:
- 四:链接文件:
- 五:Linux的权限管理:
- 六:linux文件和内容查找:
一:linux的文件和目录结构
1. cd (change directory) 用于改变当前路径。(进入、切换到)
语法:cd [绝对路径或相对路径]
1> cd /home 到指定的目录下。
2> cd .. 返回上一级。
3> cd ~ 进入属主目录。
属主目录:也称为“家”目录。
root用户的属主目录是/root目录。
普通的用户的属主目录是/home下以该用户名命名的目录。
2.pwd:用于查询当前完整的路径。
语法:pwd
3.linux的文件和目录结构图:
(linux没有盘符的概念:所有的东西都在根下挂着呢)
4.绝对路径与相对路径:
绝对路径与所处的位置无关,相对路径与你所处的位置有关。
绝对路径:凡是从根走起的都是绝对路径。
相对路径:凡是从当前走起的都是相对路径。
5.三场戏:
在home里边创建一个a,在a里边创建一个b
在home里边创建一个1,在1里边创建一个2
mkdir用于创建目录:
语法:mkdir [-option] 目录名称
-p:当建立的目录的父目录不存在时同时建立父目录。
1>mkdir 目录名称
2>mkdir 111 222 333
3>mkdir x/y/z
rmdir可以同时删除多个。
二:文件的复制、移动和删除:
1.cp:用于复制文件:
语法:cp [-option] 源文件 目标目录成都
-r:将指定目录下所有的文件和子目录一并进行处理。
1>在同一个目录下复制文件。
2>复制文件到其他目录不改名字。
3>复制文件到其他目录改名字。
4>复制其他目录的文件到另外的目录。(人在A处把B处的文件复制到C处)
5>复制目录。-r
6>面试真题:如何把一个服务器的文件复制到另一个服务器上。 scp IP地址:路径
C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files
2.mv:用于移动文件或目录:
语法:mv 源 目标
1>在同一个目录下移动。(mv常常用于重命名)
2>移动文件或目录到其他的目录不改名字。
3>移动文件或目录到其他的目录改名字。
4>移动其他目录的文件或目录到另外的目录。(人在A处把B处的文件或目录移动到C处)
3.rm:用于删除文件。(明星级别的删除命令)
语法:rm [-option] 文件名
-f:强制删除不提示用户
-r:循环删除,用于删除目录
rm -r -f ============rm -rf 谨慎使用
rm -rf /* 禁止使用
补充:linux面试形式:
1>问你命令:
2>给你一张纸写出linux命令:
3>现场操作。rm -rf /*
rm -rf /root
操作小技巧:
1.上下键:调出上一次的输入
2.清屏:clear 或 ctrl+l
3.tab:联想。
下午上课前大家:切换到命令行界面,并查看一下自己的linux的ip地址。
管道符比较抽象最好预习一下,还有chmod比较复杂最好预习一下。
三:查看文件内容:
1.管道符:也称为管道命令竖线,该命令可以将一个命令的输出送给其他命令作为输入。
语法:command 1|command 2
ifconfig|less 按 q退出
适当的囫囵吞枣。
我们要学会与自己和解。
2.cat:用于将一个文件的内容连续的输出到屏幕上。
语法:cat [-option] 文件名
-n:连行号一起显示
-b:连行号一起显示,但是空行不算。
cat命令的缺点:如果文件内容过多,超过一屏,cat会一闪而过。
cat是linux默认的文件查看命令。
3.more:与cat类似也适用于显示文件内容的,不同在于如果文件内容过多,cat会一闪而过而more会停下来等待用户下翻。
语法:more [-option] 文件名
+n:从第n行开始显示
-n:定义屏幕大小为n行
如何下翻:回车键:一行行下翻。空格键:一页页下翻。
more的缺点:只能下翻不能上翻。
4.less:less与more几乎一样,区别在于less可以使用上下键(paup/pagedown)进行上下翻。
语法:less [-option] 文件名
-N:显示行号
按q退出。
思考:既然less这么好为什么还要有cat和more?
1.head -n
2.tail -n
3.tac(行倒叙)
4.rev(每行的内容倒叙)
5.cal
6.date
7.touch 新建空文本文件。
ctrl +c:终止任务
挑战:sed、awk、echo这几个命令是什么意思?怎么用?
四:链接文件:
链接指的是对文件的引用,链接的目的是为了让文件在文件系统中多处被看到。
在linux中链接文件分为两种:
1.硬连接:hard link
2.符号链接(软链接):symbolic link
语法:ln [-option] 源文件 链接文件
-d:创建硬链接。默认为该参数。
-s:创建软链接, 创建软连接到别的目录时要指明源文件的位置
硬链接与软链接的区别:
1.建立硬链接时源文件与链接文件必须位于同一个文件系统中,而建立软链接时源文件和链接文件可以位于不同的文件系统,甚至可以跨越不同的机器。
2.硬链接指向一个原始文件时即使源文件被删除,链接文件依然有效,而软链接一旦源文件被删除链接文件立马失效。
疑问1:硬链接与复制有什么区别?
1>复制后节点数不变而增加硬链接节点数会加1。
2>修改文件后复制的文件不会跟着改变而硬链接会。
疑问2:硬链接的特点是:删除不影响,而修改影响?它会用在什么场景下。
硬链接主要用于数据的备份。
三城三地 三城五地
做软链接时需要给源文件前加绝对路径。
五:Linux的权限管理:
1.chown:用于改变文件或目录的所有者和所属的群组。
语法:chown [-option] user:group 文件或目录名称
-R:连同目录下所有的文件和子目录一并变更。
2.chmod:用于改变文件或目录的读写执行权限。
语法:chmod [-option] [parmeter] 文件或目录名称
[-option] -R:连同目录下所有的文件和子目录一并变更。
使用chmod改变文件目录的读写执行权限共有三个方法:
方法一:权限掩码Umask法:
1.首先用1和0把要改的权限表示出来,有权限用1表示,没有权限用0表示。
例如:rw-rw-rw-110110110 rw-r--r--110100100
2.把表示出来的数字三个为一组分为三组并转为十进制或者八进制。
例如:110110110 666 110100100 644
3.使用chmod命令刚才的数字就是[parmeter]
如何把二进制转为十进制:
1.位权法:
101=1*2^0+0*2^1+1*2^2=5
2.二进制 八进制 十进制
0 0 0
1 1 1
10 2 2
11 3 3
100 4 4
101 5 5
110 6 6
111 7 7
1000 10 8
3.r----47
w----2
x----1
练习:新建一个文本文件并记住其读写执行权限,使用权限掩码Umask把其权限变为rwxrw-r–,最终又改回原来的权限。
方法二:ugo法:(赋值法:使用等号分别给ugo赋值,使用,gek)
u----user:用户
g----group:群组
o----other:其他
a----all:所有
方法三:ugo±(使用±来增加或者减少权限,用,隔开)
u----user:用户
g----group:群组
o----other:其他
a----all:所有
无法剥夺管理官root的阅读权限。
思考:请问如果对源文件的读写执行权限进行修改请问:硬链接会不会变?软链接会不会变?
修改源文件的读写执行权限(或者所有者所属群组)硬链接和软件的都会跟着改变,只是软链接的读写执行权限(或者所有者所属群组)没有参考意义。
眼见不一定为实?
六:linux文件和内容查找:
1.grep:是linux下一个非常强大的文本搜索工具。(global search regular expression and print out to line)
语法:grep [-option] ‘需要搜索的内容’ 文件名
-n:显示匹配行几行
-c:只显示匹配行的计数
-i:搜索时忽略大小写
1>普通搜索:
2>带*搜索
3>使用正则表达式:
正则表达式:(regular expression):所谓的正则表达式就是用某种模式去匹配一类字符串的一个公式。
2020/06/03---------->20[0-9][0-9]/[0-1][0-9]/[0-3][0-9]
\<:表示从匹配的正则表达式的行开始
\>:表示从匹配的正则表达式的行结束
2.find:可以对指定的目录或者子目录进行文件搜索
语法:find [path] [-option] 文件名
[-option]:-name file 查找文件名为file的文件
find:超照速度非常慢,find的原理是:遍历磁盘。
3.locate:(明星级别的命令)
locate与find类似也是进行文件搜索的,但是查找文件特别快,并且语法简单。
语法:locate 文件名
缺点:
1>有可能找不到想要的文件。
2>有可能找到不想要的文件。
locate的原理:不是遍历磁盘,而是从已经建立的数据库中查找。(/var/lib/mlocate/mlocate.db)
手动更新数据库:updatedb
第三/四天预告:
1.Linux的打包与压缩
2.linux的帮助命令
3.linux的群组管理
4.linux的关机命令
5.linux进程相关的命令
6.linux系统管理常用的命令
7.挂载
8.linux的安装包管理
9.linux环境搭建
10.linuxshell介绍