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

Linux基础指令(2)

目录

序言

cat 

echo 

总结 

more 

less

head

tail

管道|

date


序言

在Linux中一切皆文件;比如我们的屏幕也是文件,叫做显示器文件,任何进行的操作都是在文件中进行的;一些指令的默认操作对象就是键盘或者显示器文件;

cat 

cat除了能够直接跟文件名进行查看文件中内容,这一点在博客CSDN中演示过了;除此之外,cat还有其他的功能;

cat:没错,就是只有cat这一个指令,我们类比cat 文件是读取文件中的内容,说明cat的作用是读取对象中的内容;只有一个cat是读取的键盘上的数据,也就是我们手动输入的数据;cat默认的就是从键盘读取数据;

我执行命令cat,然后会让我们输入数据;然后cat就会从我们的键盘中获取刚才输入的数据直接打印在下一行;

cat < 文件:cat <文件这种指令叫做输入重定向;后面也会提到输出重定向;<的作用就是指定读取的位置;cat <文件就是指定的从后面的文件中读取数据,然后打印在显示屏中;当然这个个人觉得与没有<的功能一样;就不在演示了;

注意:cat 从假盘读取数据时,按ctrl+c停止输入;

echo 

举个简单的例子就能很清晰的明白echo 的功能;

 echo 是个输出重定向指令;默认的操作对象是显示器文件;所以我echo 一个字符串就会直接在显示器中打印出来;
注意:echo 打印字符串时后面的冒号可加可不加,因为在Linux中本就是字符;另外,echo 打印完后会自动的换行;

echo  "字符串" > 文件: 向指定文件中输出数据;如果文件不存在会自动创建然后储存输入的数据;如果文件是已存在的,将会清空文件的内容,再写入新的字符串;
小技巧:如果我们想要清空一个已有文件;直接>文件名即可,非常方便;

> 文件:如果我们在文件中什么也不写;依旧可以使用echo >文件;这个时候echo 就可以省略了;直接> 文件名就可以成功创建一个新的文件;所以这也是一个新的创建文件的方法;

>> 指令;如果我们不想直接把文件全部清空,我们可以使用>> ;>>的功能是追加;所以叫做追加重定向指令;

为什么会换行追加呢,因为echo写入一行后会自动换行; 

总结 

echo 的三种功能:
1.创建文件;
2.清空内容;
3.内容重写;

more 

more是配合cat使用的;如果我们cat 一个比较大文件时,直接cat会发生刷屏的现象;为了防止刷屏我们可以使用more指令替代cat ;
创建一个大文件:cnt=1;while [ $cnt -le 10000 ];do echo "hello $cnt";let cnt++;done > log.txt

在more指令下打印到满屏就会停止打印;我们回车才会看到下一行的数据;可以按q停止; more的缺点是只能回车才能看到下面的数据;无法使用鼠标滑轮向下翻;

less

less的功能要优于more,所以我们推荐使用less查看大文件;less不仅包含了more的功能,而且可以随意的使用鼠标上下翻;而且还有搜索功能;
/ +关键字(搜索):在冒号后面输入即可开始按照关键字搜索;同样也是按q结束查看;

head -n(行数) 文件  : 展示前n行的数据;
其中的n可以省略;

tail

tail -n(行数) 文件: 展示后n行的数据;

管道|

假如我们要把一个文件的中间的几行打印出来或者放到另一个文件中;我们有两种方法可以完成;以log.txt文件为例,把[5000,5020]打印出来;

1.先将前5020行放到一个文件tmp.txt中,然后把打印后21行;但是这样看起来和操作起来会比较麻烦;
2.利用管道;可以把管道看成是一个中间储存的媒介;

先将前50200行放在管道中,然后tail -21从管道中读取;当然我们可在一段指令中使用多个管道;

date

date 显示
date 指定格式显示时间: date +%Y:%m:%d
date 用法: date [OPTION]... [+FORMAT]
1. 在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下
%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
2. 在设定时间方面
date -s // 设置当前时间,只有 root 权限才能设置,其他只能查看。
date -s 20080523 // 设置成 20080523 ,这样会把具体时间设置成空 00:00:00
date -s 01:01:01 // 设置具体时间,不会对日期做更改
date -s “01:01:01 2008-05-23″ // 这样可以设置全部时间
date -s “01:01:01 20080523″ // 这样可以设置全部时间
date -s “2008-05-23 01:01:01″ // 这样可以设置全部时间
date -s “20080523 01:01:01″ // 这样可以设置全部时间
3. 时间戳
时间 -> 时间戳: date +%s
时间戳 -> 时间: date -d@1508749502
Unix 时间戳(英文为 Unix epoch, Unix time, POSIX time Unix timestamp )是从 1970 1 1日 UTC/GMT 的午夜)开始所经过的秒数,不考虑闰秒;
时间的指令目前用不到,可以先看看了解;

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Mysql 巧秒避开 varchar 类型的 max()、min() 函数的坑
  • CSS中响应式设计
  • 利用衍射进行材料分析--Muad
  • 【Java】—— Java面向对象进阶:Java中的多态、继承与类型判断- instanceof 操作符与方法重载的模拟
  • MySQL基础学习:如何排查慢SQL
  • 什么是CAP理论和BASE思想?
  • wpf prism 《1》、区域 、模块化
  • WPF中使用Echarts显示图表
  • zeppline如何配置用户登陆
  • Python使用zdppy_mysql操作MySQL和MariaDB数据库快速入门教程
  • PE文件结构详解(非常详细)
  • 【Leetcode:2024. 考试的最大困扰度 + 滑动窗口】
  • [易聊]软件项目测试报告
  • Java 面向对象编程的四个基本原则(封装、继承、多态和抽象),并给出一个简单的例子说明如何在 Java 中应用这些原则?
  • Postman中参数填写方式
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • ➹使用webpack配置多页面应用(MPA)
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • AWS实战 - 利用IAM对S3做访问控制
  • echarts的各种常用效果展示
  • hadoop入门学习教程--DKHadoop完整安装步骤
  • JS基础之数据类型、对象、原型、原型链、继承
  • Laravel 菜鸟晋级之路
  • MQ框架的比较
  • Node + FFmpeg 实现Canvas动画导出视频
  • PAT A1120
  • php的插入排序,通过双层for循环
  • Python_网络编程
  • Redux系列x:源码分析
  • ⭐ Unity 开发bug —— 打包后shader失效或者bug (我这里用Shader做两张图片的合并发现了问题)
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 从@property说起(二)当我们写下@property (nonatomic, weak) id obj时,我们究竟写了什么...
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 入门级的git使用指北
  • 设计模式 开闭原则
  • 听说你叫Java(二)–Servlet请求
  • #stm32驱动外设模块总结w5500模块
  • (02)Unity使用在线AI大模型(调用Python)
  • (bean配置类的注解开发)学习Spring的第十三天
  • (floyd+补集) poj 3275
  • (Matalb回归预测)PSO-BP粒子群算法优化BP神经网络的多维回归预测
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (PADS学习)第二章:原理图绘制 第一部分
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (蓝桥杯每日一题)love
  • (四)Linux Shell编程——输入输出重定向
  • (一)基于IDEA的JAVA基础10
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)LINQ之路
  • (转)创业的注意事项
  • .bashrc在哪里,alias妙用
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .net Application的目录
  • .NET Standard 支持的 .NET Framework 和 .NET Core
  • .net 使用ajax控件后如何调用前端脚本