Linux系列文章(3)指令和权限

指令

接着上一次结束的内容,接着讲解更多的Linux基础指令

date指令

date指令用于显示时间,可以跟的选项非常多,只讲用的多的几个

date +%Y-%m-%d可以显示年月日(注意Y要大写,其中的-分隔符可以自己定义)

date +%H:%M:%S可以显示小时 分钟 秒,中间的分隔符同样可以自己定义

以上两条指令均可以拼接在一起使用

date +%s(小写)可以用时间戳的形式显示时间

date -d @时间戳 可以将时间戳转换为年月日几小时几分钟几秒

cal指令

作用是查看日历(公历)

单独输入指令会显示这个月的日历

cal 年份查看固定年份的日历

cal -3查看近三个月的日历

find,which,whereis指令

三个都是查找的命令,不过使用的场景不一样

find 从哪里开始找 找什么可以在我们的计算机里查找任意的文件,除非无法访问

他是递归进行搜索,直到将指定的目录中的所有内容找完为止

which 在/usr/bin目录下查找指定的指令,并找到关联的alias

whereis 用于寻找库中关联的内容,比如ls,比如stdio,比如printf

常用的热键

Tab键可以用于补全指令,如果输入一个字符串,与之匹配的指令就一个,点击Tab键就能够将命令补全,如果匹配的指令不止一个,按下两次Tab键会将所有关联的指令都输出

ctrl c可以中断命令,如果你想让正在循行的命令行指令停下来,可以使用

ctrl d是非阻塞式检查,之后会讲解,可以用它关闭窗口

ctrl r打印出历史指令,默认存储最新的1000条

grep命令

这个命令可以将它理解成是一种按行的文本过滤工具

grep 过滤出来的内容的特征要过滤的文件

这个操作可以和管道结合使用,例如

cat text.txt | grep 999
grep 999 text.txt

两种写法效果是一样的

grep -n可以标出过滤出的内容出现在源文件的第几行

grep -v可以将过滤剩下的内容打印出来,可以理解为reverse

grep -i可以忽略大小写进行过滤

grep -R可以递归式的将所有文件中包含关键字的打印出来

这个操作可以用来搜索项目文件的特定函数

uname指令

可以用来查询系统机构

uname -a可以查询操作系统的类型,版本很多信息

el7表示是centOS7

x86_64 = x64

使用uname -r是查询操作系统地体系结构

zip和unzip

我们都见过Windows里面的zip压缩包

这两条指令就是用来压缩和解压缩的

如果我们的机器中没有这个命令,使用sudo yum install zip unzip下载即可

但是讲解之前我们应该线了解一下打包和压缩的意义:

1.将多个文件合并成一个文件,不容易造成文件丢失,设想一下如果我们直接传输所有的文件,如果里面的一两个文件发生丢失,需要很长时间去排查,但是如果我们打包压缩成一个整体,要丢失就全部丢失,我们只需要重新传一遍就可以了。

2.减少传输的体积,增快传输的速度

好的这就是打包压缩的意义,接下来接着将使用方法

zip -r 压缩包名称.zip 压缩的东西递归式地压缩文件,如果我们要压缩地是一个有内容的文件夹,就需要加上该选项(一般都需要加),不然的话就只能压缩一个空目录,没什么作用

unzip 压缩包名称 解压的路径会将压缩包解压到固定的路径中去

tar命令

tar也是用于打包压缩的工具,不过它的使用会更加地灵活

tar czf \[\]打包压缩(c表示create,z表示使用zip方式压缩,f表示文件)

tar tzf 预览压缩包

tar xzf 解压缩

压缩方式有很多种,如果以后遇到不会地压缩解压缩方式,直接上网搜索即可

bc命令

呼出计算器,和windows里面的计算没有区别,只不过一个是命令行,一个有图形化界面

可以使用管道和其他指令结合在一起使用,比如

echo "1+2+3" | bc

就可以直接显示结果

shutdown关机指令

-h 将系统的指令停掉后立刻关机

-t 秒数设置关机时间

-r重启

权限

我们已经知道指令的本质就是可执行文件,我们输入指令就是在调用可执行文件,但是这个操作并不是在操作操作系统

在Linux中我们使用命令对电脑进行操作,命令被命令行解释器解释之后传给操作系统,这种命令行解释器叫做shell(命令行解释器可以将用户的指令解释给OS,也可以将OS运行的结果翻译给用户),那么为什么要这样设计呢

1.OS直接使用难度太高,所以我们需要命令行解释器这个媒介来进行操作,翻译我们的行为

2.命令行是对操作系统的保护,对于用户的非法操作可以直接中断

相关推荐
你好潘先生9 小时前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
orion5720 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站1 天前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
程序员老赵1 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位1 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式