2023-12-10 21:12:16 Linux
本笔记内容可结合视频配套使用:黑马程序员新版Linux零基础快速入门到精通,全涵盖linux系统知识、常用软件环境部署、Shell脚本、云平台实践、大数据集群项目实战等
本笔记基于黑马Linux课程原笔记基础上进行内容的增加,但是!
本笔记内容只是浅显的介绍了Linux的一些基本操作,更深层次的应用请自行查阅手册或网络查询有关内容!
XX --help
/
,根目录是最顶级的目录了/
/
来表示功能:列出文件夹信息,当不使用选项和参数时,即只使用 ls
本体就会以平铺形式显示当前工作目录的所有内容
语法:ls [-l -h -a] [参数]
-h,配合-l,以更加人性化的方式显示文件大小
-a,显示隐藏文件
当然,这些命令可以组合使用,比如以下三个命令(这三个命令作用是一样的):
隐藏文件、文件夹:
在Linux中以.
开头的,均是隐藏的。
默认不显示出来,需要-a
选项才可查看到。
全称:==P==rint ==W==ork ==D==irectory
功能:展示当前工作目录
语法:pwd
全称: ==C==hange ==D==irectory
功能:切换工作目录
语法:cd [目标目录]
参数:目标目录,要切换去的地方,不提供参数时,默认切换到当前登录用户HOME目录
即 /home/user
/home/user
,通过 pwd
命令显示当前工作目录,如果需要我们就可以通过 cd
命令切换到其他工作目录每一个用户在Linux系统中都有自己的专属工作目录,称之为HOME目录。
普通用户的HOME目录,默认在:/home/用户名
root用户的HOME目录,在:/root
登陆终端后,默认的工作目录就是用户的HOME目录
相对路径,==非==/
开头的称之为相对路径
相对路径表示以当前目录
作为起点,去描述路径,如test/a.txt
,表示当前工作目录内的test文件夹内的a.txt文件
绝对路径,==以==/
开头的称之为绝对路径
绝对路径从根
开始描述路径
.
,表示当前,比如./test1,表示当前文件夹内的test1
文件Home
展示当前目录,然后展示进入、退出 /home/user/test/test1
目录..
,表示上级目录,比如../
表示上级目录,../../
表示上级的上级目录~
,表示用户的HOME目录,比如cd ~
,即可切回用户HOME目录需要注意的是,特属路径符不仅仅可以是使用在 cd
命令之中
全称:==M==a==k==e ==Dir==ectory`
功能:创建文件夹
语法:mkdir [-p] 参数
案例: 在 /home/user
创建多层级文件夹路径 /home/user/test/test3/test3_1
注意:
-p
修饰,并且这会自动生成不存在的文件夹~
特殊路径符表示用户的 /home/user 目录,所以我们才能不返回 /home/user 目录就能创建文件夹,如果我们不加 ~
的话,就需要从根目录开始写出完整的路径了,如下所示:功能:创建文件
语法:touch 参数
注意:
XX路径下的XX文件
,相对、绝对、特殊路径符均可使用案例:
test1_1
文件夹下创建一个 test1.txt
文件:touch test1.txt
功能:查看文件内容
语法:cat 参数
案例:查看 /home/user/test/test1/test1_1/test.txt
文件内容
cat test1.txt
cat /路径/.../test1.txt
功能:查看文件,可以支持翻页查看
语法:more 参数
空格
键翻页(此外还有B、上下方向键也可)q
退出查看功能:复制文件、文件夹
语法:cp [-r] 参数1 参数2
-r
会覆盖文件夹内重复的所有内容,未重复的就是新增内容示例:
案例:
/home/user/test/test1/test1_1
文件夹里的 /test.txt
文件复制到 /home/user/test/test1
目录下功能:移动文件、文件夹
语法:mv 参数1 参数2
注意:
/
,比如:mv /xx路径/.../dir1/ /xx路径/.../dir2/
这样当夹的的时候,可以防止因为路径不存在导致文件夹被重命名/
,就表示重命名了案例:
test3
文件夹后移动至 test1
文件夹下全称:==r==e==m==ove
功能:删除文件、文件夹
语法:rm [-r -f] 参数1 ... 参数n ...
注意:
-f
进行强制删除!rm -rf 文件 文件夹 ...
案例:
rm test1_1 test2.txt
时,虽然报错了,但事实上 test2.txt
已被删除了,同理加上 -r
命令后也已经把文件夹删除了rm命令很危险,一定要注意,特别是切换到root用户的时候
如以下命令,请千万不要在root管理员用户下执行!
rm -rf /
rm -rf /*
这里只是做一下浅显的内容介绍
rm命令支持通配符 *
,用来做模糊匹配
符号 *
表示通配符,即匹配任意内容(包含空),示例:
test*
,表示匹配任何以 test
开头的内容*test
,表示匹配任何以 test
结尾的内容*test*
,表示匹配任何包含 test
的内容案例:
test
的文件和文件夹我们前面学习的 Linux 命令,其实他们得本体就是一个个的二进制可执行程序,和 Windows 中的 .exe
文件相似
功能:查看命令的程序本体文件路径
语法:which 参数
案例:
功能:搜索文件
详细用法:find --help
语法:find 起始路径 -name "参数"(也就是被查文件名)
注意:
root
用户获取管理员权限su -root
123456(和你的user密码一样)
案例:
/home/user/
文件下所有包含 test
字符串的文件和文件夹语法:find 起始路径 -size + | -n[kMG]
+、-
表示大于和小于n
表示大小数字kMG
表示大小单位,k(小写字母)表示kb,M(表示MB),G(表示GB)案例:
/home/user/
目录下小于10kb的文件:find ~/ -size -10k
/home/user/
目录下大于100MB的文件:find ~/ -size +100M
/home/user/
目录下大于1G的文件:find ~/ -size +1G
功能:从文件中他通过关键字过滤文件行
语法:grep [-n] "关键字" 文件路径
案例:
从 /home/user
目录下查看内容后,通过关键字过滤文件内容
从 /home/user/test/test2
目录下查看后,通过关键字过滤文件内容
参数文件路径,可以作为管道符的输入
功能:统计文件的行数、单词数量等
语法:wc [-c -m -l -w] 文件路径
参数文件路径,可作为管道符的输入
案例:
写法:xx | xx
功能:将符号左边的结果,作为符号右边的输入
案例:
cat -n test/test1/test2.txt | grep 阿米诺斯
,将 cat xx.txt
的结果,作为 grep
命令的输入,用来过滤 阿米诺斯
关键字cat -n test/test1/test2.txt | grep 阿米诺斯 | wc -wm
,嵌套使用,将 test2.txt
文本里的所有内容,通过 grep
进行过滤筛选出所有的 阿米诺斯
关键字,然后再通过 wc -wm
统计字符数量和单词数量最常用的就是用来查进程了:ps -ef | grep 你要查的进程名
功能:在命令行中输出指定内容,如果输出内容比较浮渣,请用双引号 ""
将内容包围
语法:echo 参数
案例:
功能:被两个反引号包围的内容,会作为命令执行
案例:
功能:将符号左边的结果,输出到右边指定的文件中去
>
,表示覆盖输出 + 追加 阿米诺斯4 至 test2.txt
中
>>
,表示追加输出
案例:
用 时代少年团 覆盖 test1.txt
内容
test2.txt
中通过管道符 |
追加内容:
通过 echo
实现多行增加
将一个文件内容覆盖到另一个文件中
功能:查看文件尾部内容,跟踪文件的最新更改
语法:tail [-f -num] 参数
ctrl + c
终止 tail -f ...
命令案例:
功能:查看文件头部内容
语法:head [-n] 参数
vi\vim 是 visual interface 的简称 , 是 Linux 中最经典的文本编辑器
同图形化界面中的 文本编辑器一样, vi 是命令行下对文本文件进行编辑的绝佳选择。
vim 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜
色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。
命令模式( Command mode )
输入模式( Insert mode )
底线命令模式( Last line mode )
通过 vi/vim 命令编辑文件,会打开一个新的窗口,此时这个窗口就是:命令模式窗口
命令模式是 vi 编辑器的入口和出口,如右图
• 进入 vi 编辑器会进入命令模式
• 通过命令模式输入键盘指令,可以进入输入模式
• 输入模式需要退回到命令模式,然后通过命令可以进入底线命令模式
快速体验
vim hello.txt
,编辑一个新文件,执行后进入的是命令模式i
,进入输入模式时代少年团 阿米诺斯
.esc
回退会命令模式:
,进入底线命令模式wq
,保存文件并退出 vi
编辑器案例:
通过 vim /home/user/test/test1/test1.txt
进入 test1.txt
文本,并新增内容 “时代少年团” 后保存退出
进入文本,在键盘上点击 i
键后进入插入模式,在下面新增 “时代少年团” 文本
按 esc
键退出插入模式,并且按 :
键进入底层命令模式 (需要注意的是,输入法记得切换为英文,否则输出 英文的 :
键就会变为输出中文的 :
键!)
其余操作就自己去试试吧
如果需要通过 vi/vim
编辑器编辑文件,请通过如下命令:
vi 文件路径
vim 文件路径
vim
兼容全部的 vi
功能,后续全部使用 vim
命令
我们学习的一系列Linux命令,它们所拥有的选项都是非常多的。
比如,简单的ls命令就有:-a -A -b -c -C -d -D -f -F -g -G -h -H -i -I -k -l -L -m -n -N -o -p -q -Q -r-R -s -S -t -T -u -U -v -w -x -X -1等选项,可以发现选项是极其多的。
课程中, 并不会将全部的选项都进行讲解,否则,一个ls命令就可能讲解2小时之久。
课程中,会对常见的选项进行讲解, 足够满足绝大多数的学习、工作场景。
可以通过:命令 --help
查看命令的帮助手册
可以通过:man 命令
查看某命令的详细手册