邂逅Linux
预学先知
①我们为什么要学习Linux?
在计算机课程的知识体系中,是我们操作的基本能力,面对工作的时候尤为重要
兼容性强,跨学科能力广,对下操作系统,硬件,向上语言
作为一名大学生的话校招又是考察的重点
②Linus对我们有什么意义,一般运用在哪些方面
可以帮助我们快速成长,学东西更加迅速;Linux系统,Linux网络,Linux平台MySQL
③学习这门课要怎么学?
理论+实践 五五开
④学习用到的服务器,以及登录软件
不推荐虚拟机,安装繁琐,挂了麻烦
学生推荐云服务器,腾讯云,阿里云等(最低配的轻量级应用服务器即可),不是特别贵,两年100,一年38,还可以出租给别人
版本centos 7.6(x) , 最低配,最便宜的买
买完记得重置root密码
远程登录服务器建议选XShell
使用Xshell中的root身份登录服务器
有两种方式:
①命令行窗口的方式,右上角文件新建之后打开即可
②命令行窗口的方式
使用下面格式:ssh root@你的主机名
也可以登录
注意:
复制 粘贴 在Xshell 里是 ctrl + ins , shift + ins
双击ctrl +d 退出程序
由于使用root身份权限很大,因此很危险,所以我们经量用普通用户的身份来进行操作,所以建立普通用户
使用adduser+name进行创建
用passwad+name设置密码
userdel -r +name 删除用户
基本操作指令的学习
pwd 显示当前目录/所在的路径
ls 显示当前目录
touch +文件名 创建文件
nano + 文件名 打开文件
cat + 文件名 显示文件内容
gcc + 文件名 编译 可产生一个a.out的文件
./文件名 运行
ls
ls -l 以列表的形式显示更多文件
ls -a 显示隐藏文件
cd … 路径回退
Linux下, 文件由.开头的是隐藏文件
d:文件类型是目录
-:文件类型是普通目录
.是当前路径, …是上级路径
alias 起别名,且作用的有效时间是当前的登录
(了解,不要去给系统的一些指令去取别名,造成污染指令池)
which 查询特殊指令的系统路径
ll 通过查看可以看出就是ls -l , 两者等价
cd 更改路径
cd - 可以两个高频路径快速切换
对路径的理解
绝对路径:从根开始的路径,明白”我在哪里,我是谁“,前面的一堆指的就是路径,最后的文件名说明我是谁
相对路径有多条,但绝对路径只有一条
touch 用来创建普通文件,而不是目录,目录有其他的创建方法
用处:1. 创建文件,普通的文本文件
-
更新文件的最近创建时间
三个不同的时间,Change ,Modify, Access 的区别是什么?后期会更新
mkdir + 目录名:创建一个空目录
mkdir -p +目录名 :创建一条路径(一个多级目录)
删除
rmdir + 目录名 :通常删除的是空目录
rm + -r + 目录名:递归删除,可以删除目录,不管是空还是非空
rm + -f + 目录名 : 强制删除,绝大多数的文件都可以被删除
rm + -rf + 目录名 :递归并强制删除,不能有误操作,不要乱删
man手册
安装指令(用root身份安装): yum install -y man-pages
man man:问这个男人管家他是谁, 进去以后回车下翻,q退出
拷贝文件:
cp+ 要拷贝的文件+ 新文件 : 默认路径是在当前文件路径下
cp+ 要拷贝的文件+绝对路径:将文件拷贝到该绝对路径下
拷贝目录:
cp + -r + 目录名 + 新目录 :但是里面会有询问如果目录中有不属于该用户的文件
cp + -rf + 目录名 + 新目录 : 强制拷贝
mv
两个功能:剪切,重命名
mv+ 指定目录:将指定目录的文件剪切到当前路径下
mv + 目录名 + 要剪切到的路径:将一个目录放到另一个指定的目录中去
mv完成对文件的重命名
mv + 旧文件名 + 新文件名
查看文件内容
cat : 在只想查看文件内容,不用打开的情况下 , 正序输出文本
tac: 逆序输出文本
more 和 less
more + -n + 文件名: 从头开始看
按q退出; 回车enter往下翻; /数字 直接跳转
缺点只能往下,不能往上
less + (-n) + 文件名:避免了more的缺陷,可以进行上下翻
head 和 tail :
head+ (-n) + 文件名 : 查看文件前几行
tail+ (-n) + 文件名 : 查看文件后几行
总结:1.小文件可以直接用cat进行查看
2.大文件(日志,别人写好的代码),不想要打开它,可以使用more/less
3.局部看前几行后几行可以用head tail
head和tail 一个头一个尾, 抛出问题:如何查看某个文件中间的代码?
重定向
echo : 输出重定向时,目录不存在,会自动创建
输出重定向的时候,会清空原来文件中的内容
追加重定向:不想清空之前文件中的内容时,用>>, 本质也是写入
输入重定向<
这里是将文件中的内容打印到屏幕上
命令行中的|叫做管道 ,管道是一种文件
这里管道的作用呢是把前120行数据放到管道里然后对后二十行数据进行操作
把管道中的前10行,后武5行的数据拿到
也就是5-10行(因为默认是输出10行)
处理完1,处理2,再处理3 , “流水线处理”
总结:
自然世界中:管道是用来传输资源的。
在计算机中,管道就是入口出口 , 传输的资源就是数据
查看时间
时间的显示
%H : 小时(00…23)
%M : 分钟(00…59)
%S : 秒(00…61)
%X : 相当于 %H:%M:%S
%d : 日 (01…31)
%m : 月份 (01…12)
%Y : 完整年份 (0000…9999)
%F : 相当于 %Y-%m-%d
时间戳:
从1970年1月1日 0时0分 累积到现在的总秒数
将时间转换为时间戳,随便用一个转换工具即可
将时间戳转换回来
时间戳是给程序看的,时间戳是给程序员看的
cal日历
默认的是当年当月的日历
cal+n 加具体年份可以显示具体的
cal + -3 显示这个月,上个月,下个月
find指令
which 可以查找指令的路径
查找文件特定的路径用find
grep
grep叫行过滤工具
grep + 文件名
grep + -v + 文件名 :反向匹配
grep + -i +文件名 : 大小写忽略
grep支持正则表达式
zip和unzip
打包和压缩
zip + 打包名字 + 文件名
unzip + 文件名
直接压缩一个普通文件是可以的,压缩一个目录里面的东西不能压缩成功,只能压缩个空目录
想要压缩目录及其里面的内容
需要使用zip+ -r + 打包名字 + 文件名
解压到特定的路径
unzip + 包名 + -d + 想要到的路径
tar命令
tar+ czvf + 包名.tgz + 包名
tar + xzvf + 包名.tgz
-c : create , 建立一个压缩文件的参数指令
-z : 是否具有gzip的属性 ?是否要用gzip压缩
-f : 使用文档名,在f之后要马上接档名
-v:压缩过程显示文件名
-C :解压到指定路径
打包 VS 压缩
打包是把所有东西分门别类的放进去
压缩是以减少空间为目的
bc命令
计算器的用处
可以应用在管道上
uname
获取电脑和操作系统相关数据
一些热键的使用
Tab : 自动补齐,打which ,打whic加tab可以自动补齐
ctrl + r : 自动检索,部分代码 将你历史写的代码给检索出来
ctrl + c:终止异常程序
ctrl + d :第一次关闭程序,第二次关闭xshell
一些其他命令
history 记录历史你输入的命令
file + 文件名
037437)]
打包 VS 压缩
打包是把所有东西分门别类的放进去
压缩是以减少空间为目的
bc命令
计算器的用处
[外链图片转存中…(img-lxXNjzRt-1643282037437)]
可以应用在管道上
[外链图片转存中…(img-8AA0uZsE-1643282037438)]
uname
获取电脑和操作系统相关数据
[外链图片转存中…(img-wyeqfFqj-1643282037438)]
一些热键的使用
Tab : 自动补齐,打which ,打whic加tab可以自动补齐
ctrl + r : 自动检索,部分代码 将你历史写的代码给检索出来
ctrl + c:终止异常程序
ctrl + d :第一次关闭程序,第二次关闭xshell
一些其他命令
history 记录历史你输入的命令
file + 文件名