前言
首先说一下为什么要学习这个,前几天碰到了提供docker image 的问题,详见此处,
当下的问题是解决了,我知道了如何将前端代码打包后部署 docker 镜像,但是我就在反思,难道关于docker我真的只需要知道这一点知识吗?对比导师会的,认真思考了一下,好像并不是,知道这点内容也许现在够,但以后肯定是不够的。
而这和Linux常用的基本命令又有什么关系呢?
打开了B站上的一个docker教学点击量最高的视频,发现没几分钟视频里的老师就说,学习docker必须有Linux基本命令的基础。(唉,生活不易,要学的越来越多,能怎么办呢,学呗)
本来以为我完全没接触过Linux命令行,结果边学边发现,不对我错了,我接触过,还是在两个地方,只不过我没有深究过(感叹自己对知识的学习态度不够透彻的同时,也感叹果然对于毕业生而言,实习是最好的学习)
为什么要这么说呢?
是因为在进入现在这家公司之前,在另一家企业实习了五个月,那个时候一个很负责的后端大佬教了我不少东西,其中包括用Xshell 发布项目,Xshell中所使用的命令即Linux命令。
另一个接触则是因为当前公司办公为mac,刚从Windows转换为mac时真的及其不习惯,界面、命令什么都不一样,现在一些最基础的命令已经可以信手拈来了,原来这都是Linux命令
Linux 命令行
关机 shutdown
语法:shutdown [-t seconds] /[-r/k/h/n/c/f/F] time [message]
- -r 为关机后开机(即重启)
- -h 为关机
- time 为关机的时间
- message 为 信息
最常用
shutdown -r now
立即重启shutdown -h now
关机
更改目录 cd
语法: cd [路径/目录名]
常用:
cd ~
进入“home”目录cd /
进入根目录cd ..
返回上一级目录cd a/b
进入当前文件夹中的a/b目录cd /a/b
进入根目录文件夹中的a/b 目录,注意与的区别
查看目录 ls
语法: ls [-a/-l/-al]
- -a:全部文件,包括隐藏文件
- -l: 列出属性(类似window磁盘中的形式)
- -al : 隐藏文件+属性
创建目录 mkdir
语法:mkdir [路径/文件名]
mkdir a
在当前目录创建文件amkdir /b/a
在b文件中创建文件a
删除 rm
语法: rm [-rf] 目录/文件
- -r:删除目录 ,没有 -r 不会删除目录
- -f:忽略不存在的文件
- -i:提示/询问
例子:
- rm -rf a: 删除a文件中所有内容,且不询问(危险,慎用)
- rmkdir 为删除空的目录
复制 cp
语法: cp [-r/i/a] 文件名 文件复制目标
- -i:提示
- -r:复制目录中全部内容
- -a:新复制的文件和原文件保持时间一直
移动/修改 mv
语法:mv 文件 剪切到的目标位置/文件名
- 第二个参数如为目录:mv 为移动,如为文件名:mv为修改
例子:
mv a.txt b.txt
将a.txt文件重命名为b.txtmv a.txt /b
将a.txt 文件移动到根目录下的b文件夹中
注意:第一个参数可以为多个文件,中间用空格
隔开即可
查看文件 cat
语法 cat 文件名
- cat 为 从前往后 查看文件, 若换为tac为 从后往前 查看
其他查看语法:
more : 一页一页的显示,只能往后翻页
space
向下翻一页,Enter
向下翻一行
less:一页一页的显示,可向前向后
- 翻页由
pageup
和pagedown
实现,即⌨️中的↑和↓,space
也可实现向下翻页
- 翻页由
- head:只查看前几行, 常用为:
head 文件名 [-n 行数]
行数为负数则从后往前 - tail: 只看最后几行
注意:进入编辑模式之后,按 q,可退出编辑模式
解压/压缩命令 tar
语法:tar [-cfruxtzjZv] 文件名
- -c:建立新的压缩文件
- -f:指定压缩文件
- -x:从压缩包中抽取文件
- -z: 支持gzip压缩,-j:支持bzip2压缩,-Z:支持compress解压
- -v:显示操作过程
常用:
tar -zxvf 文件名
解压文件tar -cvf 文件名
压缩文件
总结
Linux的操作很多,记住常用即可,其他用到的时候面向百度即可,如果有遗漏或错误的地方,欢迎留言~