Linux基础指令[下]

news2024/11/17 7:50:34

文章目录

  • 0.英语单词
  • 3.Linux的重要指令[下]
    • 1. 输入/输出重定向
      • 1.1echo和输出重定向
      • 1.2cat和输入重定向
      • 1.3Linux文件理念
    • 2.长文本逐行查看
      • 2.1more的介绍
      • 2.2建议使用less
      • 2.3more/less的选项
    • 3.head&&tail显示头尾
      • 对head&&tail的认识
      • 练习head和tail
    • 4.时间指令
      • 4.1显示时间
      • 4.2date +%s
      • 4.3cal: 显示日历
    • 6.find 以及对exe程序的理解
      • find指令
      • 对exe程序的理解
    • 7.which&&whereis&&alias
      • 7.1which:
      • 7.2whereis:
      • 7.3alias:取别名
    • 8.grep【行文本过滤工具】和 wc
      • grep
      • wc: word count
    • 9.xargs【xarguement】
    • 10.打包和压缩
      • 10.1认识
      • 10.2作用
      • 10.3方式
    • 11.趣味小指令
      • 11.1bc【Basic Calculator】
      • 11.2问题:
      • 11.3热键
      • 11.4关机
      • 11.5history

0.英语单词

在这里插入图片描述

3.Linux的重要指令[下]

1. 输入/输出重定向

1.1echo和输出重定向

Linux-xshell

echo "hello"
hello//输出到显示器上

echo "hello" > file.txt      //没有文件 创建新文件
cat file.txt
hello                         //输出重定向

echo "hello world" > file.txt
cat file.txt
hello world                  //覆盖式写入

echo "hello linux" >> file.txt
cat file.txt
hello world
hello linux                  //追加重定向(追加式写入)

cat
//待输入  hello
hello                         //cat + \n :输入什么输出什么

1.echo:打印内容到显示器
echo “hello”
2.echo “hello” > file.txt:> 输出重定向覆盖式
没有文件创建新文件,有文件直接将内容写入目标文件,每次写入时清空文件原有内容。
3.echo “hello” >> file.txt : >> 追加重定向追加式
没有文件创建新文件,有文件直接将内容写入目标文件,每次写入时在原有内容基础上追加。

1.2cat和输入重定向

  1. 对于文件:
cat file.txt

文件中读取输入
输出到显示器上

  1. 对于换行符:
cat \n

从键盘输入
从键盘输入缓冲区读取
打印到显示器上

cat < file.txt

输入重定向:从文件读取内容
形象理解:将原来指向键盘输入缓冲区的指针重定向到文件(没有执行打开文件的操作)

cat file.txt

类似于C语言中fopen函数 打开文件后可以使用fread等函数操作

一下操作使得bak/bak1的文件内容均和file一样

cat file.txt > bak.txt打开文件 把本应输出到屏幕上的内容 输出到bak文件 [没有的话就新建]
cat < file.txt > bak1.txt 将file文件内容读到程序 输出到bak1

1.3Linux文件理念

Linux是采用C语言 + 一部分汇编
一般涉及到输入输出 有三个组件 显示器 键盘 普通文件
而Linux视其皆为文件

怎么做到把他们都当作文件来看待呢?

struct inout
{
//函数指针
int (*pread)();
int (*pwrite)();
}
struct file Keyboard,Display,regular file;
//此时在上层看来 这三个东西皆为文件 每个组件均有相应的读写函数

为什么这样设计捏?

以统一的方式 处理一类具有相似或相同属性/行为的事物==》为了更简单的处理事物–>人为了偷懒创造工具

2.长文本逐行查看

2.1more的介绍

当file.txt文件行数很多(1000000)
cat file.txt:直接刷屏 当想查看某一行时需要翻很久
==》
more file.txt:打印满一屏幕自动停下来 按回车打印新的一行
more -5 file.txt打印前五行

缺点:只能向下翻 不能查看已经翻过去的内容

2.2建议使用less

类似于more 打印满一屏幕停止 回车继续但是他可以上下翻阅

按回车往下 上键往上

2.3more/less的选项

在使用more/less显示文件时,输入
/521:显示521行
n:向前搜索含521的行 1521 2521…
g:回到开头

3.head&&tail显示头尾

对head&&tail的认识

head file.txt:显示前十行
head -5 file.txt:显示前5行

问题:如何获取中间一段?[999, 1009]

法一:利用临时变量tmp

head -1010 file.txt > tmp.txt
tail -11 tmp.txt

法二:利用管道|

管道是什么?

  1. 连接命令/传导数据/批量化流水化处理命令
  2. 管道是用来传导数据的
  3. 管道可视为管道文件:内存级的文件 没有在磁盘上
  4. 把本应输出到显示器的内容传给–管道–tail本应从显示器接收内容 现在从管道另一端接收

head -1010 file.txt | tail -11

练习head和tail

显示666到670

在这里插入图片描述

在这里插入图片描述

4.时间指令

4.1显示时间

在这里插入图片描述

4.2date +%s

时间戳:从1970/01/01 08:00:00【北京时间】开始到现在的秒数[单向递增,具有唯一性]

在这里插入图片描述

获得时间戳

在这里插入图片描述

时间戳转换年月日

在这里插入图片描述

4.3cal: 显示日历

cal 2023:显示本年日历
cal -1:显示当月日历
cal -3:显示前一个月 本月 后一个月日历
只有-1 -3两个选项.

6.find 以及对exe程序的理解

find指令

在文件树中查找文件并作出相应处理(可能访问磁盘)
在这里插入图片描述

对exe程序的理解

认识:
Linux下的各种命令/工具/指令 本质上就是 可执行程序
程序员所编写的C/C++代码 编译器编译之后 形成了可执行程序

使用操作系统时经常会安装软件(Linux、Win)— 实际上就是拷贝一份可执行程序
运行一个程序:
1.寻找 2.运行

7.which&&whereis&&alias

7.1which:

在系统路径中 查找特定指令所在的路径
在这里插入图片描述

7.2whereis:

whereis test.c:将包含文件名的路径显示
例如:找到test就显示路径[不是完全匹配]

7.3alias:取别名

在这里插入图片描述

起别名(自己起别名只在本次使用xshell时有效

alias ovo=‘ls -al’
ovo code【与执行ls -al的结果相同】

which ls的输出结果

在这里插入图片描述
执行ls–执行ls --color=auto

8.grep【行文本过滤工具】和 wc

grep

找到file.txt文件中含888的行 并显示[相比more/less更好用]

在这里插入图片描述

显示行号

在这里插入图片描述

除了521都显示

在这里插入图片描述

只显示printf

在这里插入图片描述

只显示PRINTF

在这里插入图片描述

大小写都显示

在这里插入图片描述

wc: word count

Linux系统中的wc命令是用来统计文件文本的字节数、单词数、行数等并显示输出的命令。
wc [选项] [文件名]

  1. 选项

-l 统计行数
-w 统计单词数
-c 统计字节数
-m 统计字符数
-L 打印最长行的长度

  1. 文件名

文件名表示要统计的文件名,可以同时指定多个文件名,用空格隔开。如果不指定文件名,则默认从标准输入读取数据进行统计。

统计文件test.txt的行数、单词数和字节数

wc -l -w -c test.txt
该命令会输出test.txt文件的行数、单词数和字节数
在这里插入图片描述

9.xargs【xarguement】

将管道的输出结果作为命令行参数交给后面的程序

ls原来是不会读字符串中的内容的

ls -l -a -i
//显示全部文件属性信息 + incode编码
echo "-l -a -i" | ls
//只输出ls指令的结果即子目录/文件

通过xargs将字符串作为参数选项通过管道给ls

echo "-l -a -i" | xargs ls [将管道的输出结果 作为命令行参数 交给后面的程序]
//显示全部文件属性信息 + incode编码

C语言main()函数的参数

在这里插入图片描述

10.打包和压缩

archive:存档
zip:压缩
inflation:解压
phase:阶段

10.1认识

打包:将东西放在一起
压缩:采用某种压缩算法 压缩他的存储空间

10.2作用

便于传输/归档

10.3方式

  1. zip

压缩失败

在这里插入图片描述

压缩成功

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

压缩至指定目录

在这里插入图片描述

总结zip和unzip

在这里插入图片描述

  1. tar命令
    -j :是否同时具有 bzip2 的属性?是否需要用 bzip2 压缩?

tar -czvf proj.tgz project [tar.gz == tgz: 打包并压缩]

在这里插入图片描述
-c :(create)建立一个压缩文件
-z :是否同时具有 gzip 的属性?是否需要用 gzip 压缩?z:zip压缩
-v :压缩的过程中显示文件!不建议用在背景执行过程! v:visualize可视化–显示压缩过程[可选 – 可不写]
-f :使用档名,在 f 之后要立即接档名!不要再加参数!f:file表示要创建一个文件

解压: tar -xzvf project.tgz -x :解开一个压缩文件

在这里插入图片描述

解压至特定目录: tar -xzvf project.tgz -C /root/code
-C : 解压到指定目录

在这里插入图片描述

形成后缀为tar的文件即只打包不压缩 tgz: tar.gz: 打包并压缩

tar -cf test.tar test //打包不压缩
tar -xf test.tar //解包
tar -tf test.tar //查看 -t :查看 tarfile 里面的文件

tar和gz

tar:将文件备份到磁带上(tape archive)
gz:GZ是UNIX系统中的压缩文件,ZIP的Gnu版本

11.趣味小指令

11.1bc【Basic Calculator】

在这里插入图片描述

echo "1+2+3" 
1+2+3
echo "1+2+3" | bc
6

11.2问题:

如何在Linux下查看Linux的体系结构,以及内核版本!

在这里插入图片描述

uname的作用

uname用来获取电脑和操作系统的相关信息
uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息
-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

11.3热键

Tab — 命令补全/档案补齐
[Ctrl]-c — 让当前的程序停掉

[Ctrl]-d —键盘输入结束(End Of File, EOF 或 End Of Input)的意思;可以取代exit

在这里插入图片描述

[Ctrl]-r:搜索

在这里插入图片描述

11.4关机

关机:云服务器一般不关机

  1. shutdown
    -h : 停掉系统服务后立即关机。
    -r : 停掉系统服务后重新启动
    -t + 秒数:『过几秒后关机』
  2. halt:
    在这里插入图片描述

开机:

reboot
在这里插入图片描述

11.5history

上下箭头可以上下翻之前使用过的指令
history: 显示所使用过的命令.

history > cmd.txt//保存到记事本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1152032.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue2+ant-design-vue a-select组件二次封装(支持单选/多选添加全选/分页(多选跨页选中)/自定义label)

一、效果图 二、参数配置 1、代码示例 <t-antd-selectv-model"selectVlaue":optionSource"stepList"change"selectChange" />2、配置参数&#xff08;Attributes&#xff09;继承 a-select Attributes 参数说明类型默认值v-model绑定值…

【陈老板赠书活动 - 16期】- 【快捷学习Spring】

陈老老老板&#x1f9b8; &#x1f468;‍&#x1f4bb;本文专栏&#xff1a;赠书活动专栏&#xff08;为大家争取的福利&#xff0c;免费送书&#xff09; &#x1f468;‍&#x1f4bb;本文简述&#xff1a;生活就像海洋,只有意志坚强的人,才能到达彼岸。 &#x1f468;‍&am…

1 — NLP 的文本预处理技术

一、说明 在本文中&#xff0c;我们将讨论以下主题&#xff1a;1为什么文本预处理很重要&#xff1f;2 文本预处理技术。这个文对预处理做一个完整化、程序化处理&#xff0c;这对NLP处理项目中有很大参考性。 二、为什么文本预处理很重要&#xff1f; 数据质量显着影响机器学习…

学习笔记|正态分布|图形法|偏度和峰度|非参数检验法|《小白爱上SPSS》课程:SPSS第三讲 | 正态分布怎么检验?看这篇文章就够了

目录 学习目的软件版本原始文档为什么要假设它服从正态分布呢?t检验一、图形法1、频数分布直方图解读 2、正态Q-Q图操作解读 3、正态P-P图SPSS实战操作解读 二、偏度和峰度解读&#xff1a; 三、非参数检验法注意事项 四、规范表达五、小结划重点 学习目的 SPSS第三讲 | 正态…

线性代数 第三章 向量

一、运算 加法、数乘、内积 施密特正交化 二、线性表出 概念&#xff1a;如果&#xff0c;则称可由线性表出&#xff08;k不要求不全为0&#xff09; 判定&#xff1a; 非齐次线性方程组有解无关&#xff0c;相关 如果两个向量组可以互相线性表出&#xff0c;则称这两个…

基于STC系列单片机实现外部中断0控制按键调节定时器0产生PWM(脉宽调制)的功能

#define uchar unsigned char//自定义无符号字符型为uchar #define uint unsigned int//自定义无符号整数型为uint sbit PwmOut P1^0;//位定义脉宽调制输出为单片机P1.0脚 uchar PwmTimeCount;//声明脉宽调制时间计数变量 uchar PwmDutyCycle;//声明脉宽调制占空比变量 void Ti…

滴滴学生认证拉新上线了 地推网推百搭项目

滴滴学生认证可以通过“聚量推客”申请&#xff0c;是一手官签服务商 量级足够大 优势&#xff1a;实时数据T1结算 百分百数据 滴滴学生认证可搭配小红书签到拉新、美团私域校园版拉新、美团圈圈拉新一起做&#xff0c;这样能赚取更多佣金

分治法求解多项式乘法

目录 多项式乘法问题暴力求解背景展开1. 系数表示值计算复杂度2. 点值法表示多项式3. 点值表示值计算复杂度4. 系数法和点值法比较5. 系数法和点值法的转换 快速傅里叶变换 FFT1. 多项式乘法的分治2. 取值的直觉3. 离散傅里叶 DFT 和单位根FFT 多项式乘法问题 多项式乘法是将两…

PandaX : Go语言企业级 IoT 物联网平台快速开发框架

PandaX 是一个基于前后端分离架构开发的开源企业级物联网平台低代码开发基座&#xff0c;后端系统采用 Go 语言和前端基于 VUE3 开发&#xff0c;支持设备接入、设备管控&#xff0c;规则链引擎&#xff0c;云组态&#xff0c;可视化大屏&#xff0c;报表设计器&#xff0c;表单…

STM32智能小车—跟随小车和摇头避障小车

一、STM32跟随小车 1. 红外壁障模块分析 原理和循迹是一样的&#xff0c;循迹红外观朝下&#xff0c;跟随朝前 2. 跟随小车的原理 左边跟随模块能返回红外&#xff0c;输出低电平&#xff0c;右边不能返回&#xff0c;输出高电平&#xff0c;说明物体在左边&#xff0c;需要…

Python基础入门例程26-NP26 牛牛的反转列表(列表)

最近的博文&#xff1a; Python基础入门例程25-NP25 有序的列表&#xff08;列表&#xff09;-CSDN博客 Python基础入门例程24-NP24 淘汰排名最后的学生&#xff08;列表&#xff09;-CSDN博客 Python基础入门例程23-NP23 删除好友&#xff08;列表&#xff09;-CSDN博客 目录 …

随机链表的复制(C++解法)

题目 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成&#xff0c;其中每个新节点的值都设为其对应的原节点的值。新节…

Go Map底层实现简述

Go的map是一种高效的数据结构&#xff0c;用于存储键值对。其底层实现是一个哈希表&#xff08;hash table&#xff09;&#xff0c;下面是有关map底层实现的详细介绍&#xff1a; 哈希表&#xff1a; map的底层实现是一个哈希表&#xff0c;也称为散列表。哈希表是一个数组&a…

轻量封装WebGPU渲染系统示例<8>- 渲染器基本场景管理(源码)

当前示例源码github地址: https://github.com/vilyLei/voxwebgpu/blob/main/src/voxgpu/sample/RSceneTest.ts 此示例渲染系统实现的特性: 1. 用户态与系统态隔离。 2. 高频调用与低频调用隔离。 3. 面向用户的易用性封装。 4. 渲染数据和渲染机制分离。 5. 用户操作和渲…

【JavaSE专栏58】“Java构造函数:作用、类型、调用顺序和最佳实践“ ⚙️⏱️

解析Java构造函数&#xff1a;作用、类型、调用顺序和最佳实践" &#x1f680;&#x1f4da;&#x1f50d;&#x1f914;&#x1f4dd;&#x1f504;⚙️⏱️&#x1f4d6;&#x1f310; 摘要引言1. 什么是构造函数 &#x1f914;2. 构造函数的类型与用途 &#x1f4dd;1.…

nodejs+vue学生考勤综合平台的设计与实现-计算机毕业设计

在当今高度发达的信息中&#xff0c;信息管理改革已成为一种更加广泛和全面的趋势。 “学生考勤综合平台”是基于Mysql数据库&#xff0c;在 程序设计的基础上实现的。为确保中国经济的持续发展&#xff0c;信息时代日益更新&#xff0c;蓬勃发展。 因此&#xff0c;国内外技术…

骑行在路上,VELO Swan O带你感受生活真实的呼吸

过去&#xff0c;人们骑车是为了更快抵达更远的地方。如今&#xff0c;越来越多身处快节奏生活环境中的都市人&#xff0c;正在通过骑行“慢”下来。骑着车穿梭在城市间&#xff0c;暂时跳脱出两点一线的既定模式&#xff0c;在路途上感受人与环境一切微妙的变化&#xff0c;真…

python爬虫报错:This version of ChromeDriver only supports Chrome version 114

使用selenium爬取网页数据&#xff0c;一运行程序就报错&#xff1a; selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 114 Current browser version is 117.0.5938.149 w…

zookeeper:简介及常用命令

目录 一、Zookeeper简介 二、Zookeeper服务端常用命令 1、启动ZooKeeper服务 2、查看ZooKeeper服务状态 3、停止ZooKeeper服务 4、重启ZooKeeper服务 三、Zookeeper客户端常用命令 1、连接ZooKeeper服务端 2、断开连接&#xff1a;quit 3、查看命令帮助&#xff1a;help…

【C++进阶】异常

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前学习C和算法 ✈️专栏&#xff1a;C航路 &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章对你有帮助的话 欢迎 评论&#x1f4ac; 点赞&#x1…