当前位置: 首页 > news >正文

【Linux】Linux下基本指令:man echo cp mv move less date grep zip tar 指令以及指令的本质

一、*通配符

ls * : 可以匹配任意一个名称的文件

ls *.c : 匹配点c后缀的文件

ls test.* :匹配以test.开头的文件

二、man 指令 

一个指令使用手册<manual > ,可以查看其他指令对应的说明

  • -k 根据关键字搜索联机帮助
  •  num 只在第num章节查找
  • -a 将所有章节的都显⽰出来,⽐如 man printf 它缺省从第⼀章开始搜索,知道就停⽌,⽤a选项,当按下q退出,他会继续往后⾯搜索,直到所有章节都搜索完毕

如果这样呢 : 

  1. 是普通的命令
  2. 是系统调⽤,如open,write之类的(通过这个,⾄少可以很⽅便的查到调⽤这个函数,需要加什么头⽂件)
  3. 是库函数,如printf,fread4是特殊⽂件,也就是/dev下的各种设备⽂件
  4. 是指⽂件的格式,⽐如passwd, 就会说明这个⽂件中各个字段的含义
  5. 是给游戏留的,由各个游戏⾃⼰定义
  6. 是附件还有⼀些变量,⽐如像environ这种全局变量在这⾥就有说明
  7. 是系统管理⽤的命令,这些命令只能由root使⽤,如ifconfig

man 默认从手册1中查到指令,如果找不到就去2中找以次按顺序找,如果找不到

三、echo指令

echo "hello Linux" :原封不动的打印

他这里不像C++里面字符串要加分号“ ” 一样, 只要是跟着在他后面的都能打印到屏幕上

这里的 > :

输出重定向,本来应该写在显示器上的内容 ,写到文件中

把原本应该写在显示器文件中的写到了普通磁盘文件中,他这种写法是覆盖的写入

第一步是清空文件

第二步是写入新内容

所以如果我们有一个文件存在,不写入新内容 ,他就会清空文件

这样 log.txt就什么都没有了

那怎样在保留原有基础上不清空原有文件,然后再写入新内容呢

 >> : 追加重定项

注意到这里每次都是换行了,那如果我们不想换行呢?

用 printf 指令 ,这里的printf是指令,和c++的printf没有一点关系,注意这里要想打印字符串就要加分号了,要不然他遇到空格就会停止打印

无论是输出重定向还是追加重定项,如果写的目标文件不存在,就会重新创建一个文件

这就不一定非得写touch 

那如果我只写一个cat呢?cat也是打印

输入一个 ,打印一个 ,(写到显示器文件中),只写cat就默认从键盘中读,因为键盘也是文件

按 ^c 可以停止

<  : 输入重定向

本来应该从键盘文件中读,现在不用从键盘文件中读,而从指定文件中读取,这叫做输入重定向

当然不写这个 输入重定向效果是一样的

四、more 指令

功能类似于cat , cat不适合看大文本。如果我想看文本的最后几行,要一直往下翻,成本太高,cat更适合看小文本而,而more更适合看大文本。他会把一个屏幕占满后,停止输入打印。如果要来继续,可以按回车想要退出,可以按关键是他能带选项,可以显示到你想要看的第几行就停下

test.txt 已经放进去了很多值

他能带选项,可以显示到你想要看的第几行就停下

但缺点就是不能往上,more 只能显示更多,所以这里还有另一个指令 less 

五、less 指令

那是相比于在保留more 的基础功能上,可以向上翻,还可以向下翻,由上下键来决定

既可以向上看,还可以向下看

六、head 指令

head test.txt : 默认把我们给的文本提取出前十行

可以带选项,带数字几就提取出前几行来,从头提出3行 :

七、tail 指令

tail test.txt  提取test.txt 文本的倒数几行,和head 相反

也可以带选项

但是如果我们想看一个文本中间的内容呢,可以利用管道文件

: head -1000 test.txt | tail -10

他把hand处理过的数据放到管道中,管道是属于内存级的,再把管道中的数据给tail

管道可以支持流水线工作,把数据一道道的加工

八、date 显示

指定格式显示时间: date +%Y:%m:%d

在显⽰⽅⾯,使⽤者可以设定欲显⽰的格式,格式设定为⼀个加号后接数个标记,其中常⽤的标记
列表如下 
• %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

Unix时间戳: 是从1970年1⽉1
⽇(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

时间->时间戳:date +%s

 时间戳->时间:date -d@1234

cal 指令 : 显示日历

  1. cal 显示当月的日历
  2. cal -3 显示3个月的日历,即当月,前一月,下一月的日历
  3. cal  2005 指定显示2005年的12个月份的日历
  4. cal -j 从1月1日开始进行计算,算出当前天在当年中处于第几天

九、find指令

find 路径 -name 文件名 可以在指定路径下搜索指定文件,注意~是家目录,查找后缀名可以使用*后缀名的方式

whereis 指令 : 在系统特定的路径下去查找,既可以查找到可执行程序,也可以查到手册安装包,压缩包等

which 指令 :查找指令所在的路径

十、grep 指令

行文本过滤器

grep 'Linux' log.txt : 他会打开log.text,以Linux作为关键字进行过滤,一行一行的过滤,如果匹配的话就打印出来

grep -v 'Linux' log.txt : 打印不包含Linux的行

grep -i  : 忽略大小写

11、zip / unzip 指令

将目录或文件压缩成zip格式

如果要压缩一个大目录,就要加上-r

zip -r d1.zip d1 log.txt  : 把d1这个树状的目录和log.text都压缩成一个d1.zip压缩包

unzip d1.zip : 解压d1.zip

解压文件容易,怎样把文件解压到指定目录下? -d 指明我们要解压的目录

unzip d1.zip -d d2/ : 把d1压缩包解压到d2目录下

12、tar指令

也是打包压缩,只不过他可以通过增加指令,既可以做到压缩,也可以做到解压

  • tar czf xxx  : 打包压缩
  • tar tzf xxx.tgz : 预览压缩的文件
  • tar xzf xxx.tgz : 解压
  • tar xzf xxx.tgz -C .. : 解压到某一路径下 (这里是解压到上一级路径)

13、bc 指令

bc命令可以很⽅便的进⾏浮点运算

14、uname指令

  1. uname 可以用来获取linux主机的所使用的操作系统的版本,硬件名称等的相关信息
  2. uname -a 可以详细输出所有信息
  3. uname -r 可以查看体系结构

补充  

Tab :Tab键可以自动补齐指令,并且会在我们的指令后面加入空格进行分隔

按Tab :

ctrl+c键 : 可以将当前运行正常或异常的程序终止退出,终止当前命令行的任务

ctrl+r键 : ctrl+r 可以搜索用户历史输入的指令 ,Linux会记录最新的1000条

ctrl+d键 : ctrl+d 相当于 exit

指令的原理 :指令的本质是编译好的程序和脚本,(放在系统的某一路径下)

以上的shell叫作命令行解释器

命令行解释器 :将使用者的命令翻译给操作系统核心处理,同时将核心处理结果翻译给使用者

存在的意义 :

  1. 存在的意义进行命令行解释
  2. 防护操作系统对于用户的非法请求进行拦截

http://www.dtcms.com/a/539903.html

相关文章:

  • Nand flash和norflash对比
  • EXCEL(带图)转html【uni版】
  • 什么是Spring?
  • 网站建设 招标资质要求网站开发和ipv6
  • 专题:2025中国汽车行业Data+AI数智化转型与全球化白皮书|附340+份报告PDF、数据仪表盘汇总下载
  • 基于金仓KFS工具,破解多数据并存,浙人医改造实战医疗信创
  • 自主访问控制模型
  • Trilium非线性笔记测评:本地知识库+远程协作,构建你的第二大脑!
  • 网站颜色背景代码建设咨询网站
  • ⸢ 拾-Ⅰ⸥⤳ 威胁感知与响应建设方案:感知覆盖威胁识别
  • Sui 中的 epoch 和 检查点(checkpoint)
  • 【仿RabbitMQ的发布订阅式消息队列】--- 概念理解
  • 图书销售系统数据库设计方案
  • SpringBoot+MybatisPlus+自定义注解+切面实现水平数据隔离功能(附代码下载)
  • Linux小课堂: JavaWeb 应用环境配置与 Tomcat 安装指南
  • Linux小课堂: Tomcat容器中部署Jenkins的完整流程与关键技术要点
  • 本地部署消息中间件 RabbitMQ 并实现外网访问 (Linux 版本)
  • Kafka在Spring Boot生态中的浅析与应用
  • 南京网站建设与维护英文购物网站模板下载
  • Linux网络编程:进程间关系和守护进程
  • 在 Ubuntu 上使用 Docker 部署思源笔记:一份详尽的实践教程以及常见错误汇总
  • 劳务网站有做吗公众号文章采集wordpress
  • Linux中,vi(vim)编辑器大部分快捷键
  • ADUM5201CRWZ-RL双通道数字隔离器 ADI亚德诺半导体 集成电路IC芯片解析
  • Ubuntu texlive安装后无法编译中文论文解决方法
  • UniversalSmartStateFilter:统一状态过滤器的架构设计与实现
  • 四旋翼机器人手臂路径规划
  • 5G专网平台客户案例分享:基于可编程5G的智慧电网巡检原型系统
  • 做网站现在什么尺寸合适深圳刚刚突然宣布
  • 基于深度学习与OCR研发的报关单识别接口技术解析