【越学学糊涂的Linux系统】Linux指令篇(2)

news2024/12/29 11:41:29

一、echo指令:

✔️✔️在终端中显示文本内容或向文件中写入文本


Ⅰ.基本用法:

0x00打印字符串:

76f72c99f26d41d18be95e25370308e8.jpeg打印字符串/显示文本内容;可以用双引号作为文本内容⬇️⬇️更推荐用单引号

9a0246af82bd49b3a5ed7c850572c222.png

这里我将字符串打印出来了。和printf的功能一样;💡但是他自带换行也就是 \n 的功能

ea90952c52af48188cca574f61642665.png a381e380fa07449985ee87b7b3155c2d.png这是我打开的一个文件夹。✔️在该路径底下,echo 并不是打开了这个文件夹,只是单纯的以✨字符串的形式打印出来

f8ed752d26d5437fb55d7a88d474b4fc.png

520b2302c80f45de9b07c97fbbd7b32d.gif显示内容指的是这个,不要搞错了

95e77e205820414abd0ca049cfff97fb.jpeg说了与printf有相同的地方,在Linux可以用printf么;✔️是可以的43a58b8411374dc496d8c2b48c75559b.png

📖单双引号都行,还可以用到占位符,但是其中 逗号空格 代替。


Ⅱ.高级用法:

0x00重定向输出:>

下面等会就讲解重定向,先说下高级用法!!!其实本质就是模拟的c语言的文件操作✨✨

1a3ec06eb22c4e9990a16256dd8bb647.png

d6054f023d14423796702ab2503e5e3a.jpeg好神奇,直接将内容放到了test.txt的文件中!!!没有该文件的时候,会先当前路劲底下创建出一个文件,然后在写入其中!!

⏭️但是注意❗❗它的写入会覆盖,相当于c语言中的读取方式为 "w"方式,没有就会新建,存在就会打开重新写入❗❗

3024fa43280b4482b254d178a7a3d4f6.png

75778f98800c4f0f8500630b763c35b3.png

 0x01追加输出重定向: >>

 ❗❗功能差不多,但是这个就不会覆盖其文件内容,相当于C语言以“a”的读取方式打开文件,将内容输入到文件中

b73dee863b71415cb68aea12a8162df1.png

4d1f25314bc74cbc971467d77fb83d67.png

 二、重定向:

0x00引用:

278f774dc7aa4de3a336e7945e098e2e.pngLinux系统中,一切皆是文件!!!

8741f3cf218b4dbc8e8efd10a68d38cb.png

❗❗ 之前也讲过指令其实也是文件,只是在/usr/bin/xxx 路径底下✔️✔️


我们的printf打印向显示器打印,这个是语言层次的描述

8d01e3ff9da34d1892f2ce2ec3f8f03b.jpeg其实本质就是文件操作

但是我们C语言学过要文件操作要先打开文件,再进行操作!键盘、显示器也要先打开文件,但是为啥我们没有去操作过呢??因为这个是系统主动给你打开了该文件。

2d9c8c44fae74f868466e98cfbde4368.png

 0x01输出重定向:

命令 > 目标

内容输入到目标文件中;没有就会将新建一个文件

4bd241b2a7234b3590d53e155c344e11.png

 ✨✨默认时直接就是写入屏幕文件,如果用到了重定向就将其写入了指定文件✔️✔️✔️
cf0cf0107c0f416991b7aaabfd3a4aa4.jpeg        ❓❓在没有写时默认是对屏幕写入,那么我如果写了 >目标文件 就会写入指定得目标文件,没有就会新建,那么我是不是可以用来创建一个文件呢❓❓

 牛逼!!!确实就是这样,我们以后直接用它来建普通文件

a7afe636995e4cc28cd39e543122eb3c.png

 fa1adca12e69480e8eb386a4f44e34f9.jpeg死老六,还有招没有使出来呢!!!

129c16b2153a4ebba84fa04f344c7a11.png

 💡💡总结

>目标文件 
①创建一个新文件
②清空一个文件

0x02追加重定向:>>

命令 >>目标文件

c811f90d5483480a886f557debedabd1.jpeg和输出重定向的区别就是不会覆盖原有的内容,也可以用来创建普通文件

0x03输入重定向:<

命令 < 文件

 将文件的内容输入到cat中,通过cat将内容输出

 826c0d790a56450ebaf1e68cd0962985.png

0x04补充:

6b9a34c0f0fa4e1d8abeed9d82164a5d.jpeg上面提过,Linux一切接文件!!那么我们的终端本质就是一个文件

是一个叫做 /dev/pts/xx文件。

c5eb9e3dc6f24946aa053e05208a06bd.png我们现在用同一个云服务器登陆不同账号,会有如下信息:

e7702230102d468e97066aef6ed5be22.png

 可以通过tty指令查看本用户的终端文件❗

💡💡我们在这边通过输出重定向,可以将我们想打印的字符串写入到隔壁用户的终端

4c1fdff10eec439086b3adeee30013c5.png

注意 :我们只有超级用户才能这么玩,普通用户没权限啊,用不了,这里我两个终端都是用的root用户,所以双方都可以实现这个操作,也就是互传!

⭕️我了个骚杠,还能这么玩❗(下面我用的是超级用户对普通用户实行的操作)

c84d9508ceb547b8a168d3de4b0aaad7.png

🤔🤔为了更好理解linux的一切是文件

afc958df553f41f8836ff14904a2cd53.pnga9dbadda94d94d93af3cbb680e6564cb.jpeg写了一个c程序,向文件输入【因为我不会怎么弄缩进,所以有点丑🐒】

a66f7f8e7e1a4e7b8aa015eb74793c12.png

⭕️在这里,我们打开隔壁终端文件,通过fscanf向该文件写入🉑然后在超级用户这边执行这个c程序,会发现成功在sw这个普通用户这里写入了🥘

 三、文件类型:

🐒文件类型多种多样

dca58b0b21b74354a38b98d26428f029.png

后面加深学习,先提高功力

四、mv指令:剪切/改名

✨语法:

mv 选项 源文件 目标文件(必须存在)

✨功能:将源文件剪切到目标文件 或者 将源文件改名成目标文件

✨常用选项:

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖

 0x00:剪切:

✔️和Windows差不多,就是将该文件移动走,一模一样的行为,相同会发生覆盖

c734c531941242b19d0d0536ad37ca5e.png

0x01改名(重命名):

🐒🐒就是看目标目录是否存在,不存在的话,认为目标文件是新名字(改名)14320a335a9147ab813a1ed39f964ce3.jpeg

1652cf53a724475e8f99a93969c1d470.png

五、cat指令:

✨语法:

cat 选项 查看的文件

✨功能:查看目标文件的内容(适用于查短文件)。

✨常用选项:

-b : 对非空输出行编号
-n : 对输出的所有行编号
-s : 不输出多行空行

很好理解4b1c15937bf44a73ab44eb04567ce3be.jpeg不多做展示了

六、tac指令(cat反过来了):

 ✨语法:

tac 查看的文件

✨功能:反向查看目标文件的内容(适用于查短文件)。

✨常用:

主要用于 | 管道。

✔️✔️直接反着给你看

62ee6b7841554b24a3bc8825835689b1.png

七、more指令:

✨语法:

more 选项 查看的文件

✨功能:查看目标文件的内容(和cat类似,作为过去主要用来查日志的指令)。

✨常用选项:

-num 指定每屏显示行数
+num 指定从哪行开始显示

✨ 一些操作:

1、空格键(Space):向下滚动一屏。
2、回车键(Enter):向下滚动一行。
3、b:向上滚动一屏。
4、q:退出 “more” 命令。

 实操一下

 这个是默认一屏显示的内容,现在我们试试选项。

 现在已经不推荐用了,因为这个只能下翻,不能上,所以不推荐

八、less指令:

✨语法:

less 选项 查看的文件

✨功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件

✨常用选项:

-i 忽略搜索时的大小写
-N 显示每行的行号

 ✨ 一些操作:

1、/字符串:向下搜索“字符串”的功能
2、?字符串:向上搜索“字符串”的功能
3、n:重复前一个搜索(与 / 或 ? 有关)
4、N:反向重复前一个搜索(与 / 或 ? 有关)
5、q:quit

同时空格和enter键的效果和more;

而且还多了一个向上翻,键盘按键↑↓可实现上下翻。

这个指令的一些内容在这就不做过多展示了,用法差不多。一般来说选项用的少,你也可以用

竟然有这么好用的less,那我们还要啥自行车,只要用上这个就行了,选项用的也不多,主要都是用来查日志的;

cat查看的内容太多了,要看一个文件太麻烦了用less去查自己需要的就可以了!

九、head和tail指令:

0x00引用:

 head与tail,一个是从头开始查,一个是从尾开始查,作为好兄弟一起被使用

0x00怎么用:

指令 选项 文件名

选项就记住一个 -n(n表示显示行数

 先看看吗默认

默认显示10行哈,接下来看看选项后

 0x01兄弟同心:

假设:我们这个log.txt文件是一个日志,现在我们是100行,我想看中间处的日志也就是50行

 这里是文件很少,体会不到,但是日志文件,一般都会很长,想要查找一下,密密麻麻的文字看的头疼,所以这个方法还不错;

0x02升级版

两兄弟刚刚是借助一个叫temp的文件(也可以说是借助了临时文件,因为用完就没用了)(类似飞鸽传书),有点麻烦啊,随着社会发展,电话诞生了!!

head说

接着说

tail(有点牛头对不上马嘴哈,主打不安慰)

电话”充当了一个媒介,将打电话人的要发送信息提供给接电话的你,这里它就是 | 管道

命令1 | 命令2

将“命令 1” 的输出会作为 “命令 2” 的输入。

 ✨✨在这里管道就不做原理性讲解了,后面在说,现在会用即可,要理解原理的话,这个涉及到冯若依曼体结构

十、和时间相关的指令:

Ⅰ.date 指令:

 当前的时间就显示出来了;

0x00用法:

✔️当然了,还可以指定格式,像这样的格式是我们不喜欢的样子

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

格式设定为一个加号后接数个标记 + 必须要,其他地方的可以根据你的格式来

 🐒我觉得不要记,这个对应的那个单词首字母,年月份的Y要大写其他小写时间要大写

%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

 0x01设置时间:

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″ //这样可以设置全部时间



 功能挺全的,但是这里就不去设置了,当了解一下就行了,谁家好人改自己的时间

0x02时间戳:

 Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒
百度百科:什么是时间戳?‌‌⏭️时间戳是指‌格林威治时间1970年1月1日00时00分00秒(北京时间1970年1月1日08时00分00秒)起至现在总秒数‌。时间戳是使用‌数字签名技术产生的数据,签名的对象包括了原始文件信息、签名参数、签名时间等信息。时间戳系统用来产生和管理时间戳,以证明原始文件在签名时间之前已经存在。

为什么?
✔️简单点来说是为了统一一下时间,类似国际语言为了方便各国各地能够交流使用英语。主要是程序员在工作是会有工作日志来记录,会记录那个时间由谁进行了什么修改,便于找bug

例如:像我们的转账记录、银行取款等都是有时间的,它们就是时间戳进行的记录。你想想,你在国外旅游刷卡了,它就要转换成时间戳来记录你的转账时间,如果用当时地方时,那不就乱套了么,国内时间和国外不一样。

💡时间戳转换:

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

 💡转换  一下当前时间:

 🐒转时间戳工具:

在线时间戳转换工具不喜欢可以直接网上查找,网上到处都是

我们来看看时间戳为0也就是时间戳开始的那一刻

因为我们是北京时间,它是根据我们现在目前时间往前推出来的。(在东八区)减去八个小时的时差,不就是格林治时间么。

Ⅱ.cal指令:

💡💡cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”

✨语法:

cal 选项 [年份][月份]

✨功能:用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份

✨常用选项:

1.-3 显示系统前一个月,当前月,下一个月的月历
2.-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
3.-y 显示当前年份的日历

0x00看年:

✔️ 直接cal (-y选项可有可无)年份

0x01-3选项:

💡查看当年的该月份以及其前后月份

 0x02直接看当日

直接cal ,默认是显示显示当日

十一、find指令:

之前有学过用which来查找,它是回去/usr/bin/(指令目录底下去查找命令)

接下来的find也是查找的,但是功能更广

掌握一个选项

-name 指定文件名来查找

find 指定目录 -name 查找文件

🤔我们用这个来实现找指令的路径的功能

✔️ 也能找到,但是会比which慢很多,因为它是广度优先遍历去查找的,在根目录中找,根目录中有很多文件的,要查的实在太多了

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

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

相关文章

【Linux实践】实验五:用户和组群账户管理

【Linux实践】实验五&#xff1a;用户和组群账户管理 实验目的实验内容实验步骤及结果1. 创建用户2. 切换用户3. 修改用户4. 删除用户5. 创建组群6. 修改组群补充&#xff1a;删除组群 实验目的 1、掌握字符界面下用户账户的设置&#xff0c;包括命令useradd、usermod、userde…

深入解析 Apache Kylin

以下是关于 Kylin 概述 部分的内容&#xff0c;你可以在技术博客中使用&#xff1a; 1. Kylin 概述 什么是 Apache Kylin&#xff1f; Apache Kylin 是一个开源的分布式分析引擎&#xff0c;主要为大数据场景下的 OLAP&#xff08;Online Analytical Processing&#xff09;提…

利用echarts 显示图片信息

当前有个需求,需要对其进行相关统计,这里我们采用jquery3.6 与echarts.js 做相关图表,不解释,直接上代码吧 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"wid…

被动元数据的不足和主动元数据的先进性

元数据管理领域&#xff0c;被动元数据管理主要执行的是一种基础且相对直接的任务&#xff0c;即简单地对元数据进行编目或存储。这一过程通常不涉及复杂的逻辑处理或动态分析&#xff0c;而是侧重于数据的静态描述和记录&#xff0c;如数据类型、结构、位置、创建时间等。 这…

【PG备份恢复】基于时间点的恢复(踩坑指南)

1 设置基于时间点恢复所需的配置 要启用WAL归档&#xff0c; 需设置wal_level配置参数为replica或更高&#xff0c;设置archive_mode为on&#xff0c;并且使用archive_command配置参数指定一个shell命令 1.1 修改配置文件 postgresql.conf vim postgresql.conf archive_…

资深老师都在用的成绩发布小程序,月考发成绩就用它!

在教育的长河中&#xff0c;老师们一直扮演着知识传递者的角色。然而&#xff0c;随着时间的流逝&#xff0c;教育的方式也在不断地革新。过去&#xff0c;老师们发布成绩查询的方式既繁琐又耗时。 现在我们有了更高效、更便捷的成绩发布方式。在众多的成绩查询系统中&#xff…

2.数据结构研究

计算机解决问题的步骤 线性表 树 图&#xff08;点线&#xff09;

电脑录屏软件免费版,四款宝藏软件揭秘

在这个数字化时代&#xff0c;无论是教学演示、游戏直播还是软件教程分享&#xff0c;电脑录屏都成为了我们日常生活中不可或缺的一部分。然而&#xff0c;面对市面上琳琅满目的录屏软件&#xff0c;如何选择一款既免费又功能强大的工具&#xff0c;成为了不少小伙伴的难题。今…

桌面专业版【ssh配置】

UOS统信SSH协议的简单使用方法。包含软件安装,服务启动及常见问题等内容。 文章目录 功能概述一、SSH安装二、SSH使用方法三、SSH常见问题1. 无法使用root用户登陆。2. SSH登录提示”connect to hosts xxxx :Connection refused功能概述 SSH 为 Secure Shell 的缩写,由 IET…

手把手搞定VMware 的CentOS硬盘扩容

1.背景 用VMware虚拟机创建Centos系统时&#xff0c;选了40GB硬盘&#xff0c;用着用着发现硬盘不够用了。于是&#xff0c;我为了给硬盘扩容&#xff0c;实操了下centos的硬盘扩容。本文是记录下整个操作过程&#xff0c;方便后面查询和使用。 2.操作 2.1 VMware操作 2.2 Ce…

Goweb---Gorm操作数据库(二)

Gorm允许用户自己自定义钩子操作&#xff0c;使用这些钩子操作&#xff0c;可以在增删改查操作前进行相关的操作和检验&#xff0c;它会在创建、更新、查询、删除时自动被调用。如果任何回调返回错误&#xff0c;GORM 将停止后续的操作并回滚事务。 自定义钩子函数 package ma…

充电宝哪个牌子性价比高?2024年充电宝推荐!7款好用充电宝推荐

近年来&#xff0c;充电宝爆炸、自燃等安全事故屡见不鲜&#xff0c;给人们的生命财产安全带来了严重的威胁。比如 2023 年 1 月&#xff0c;广西桂平的一自建民房凌晨突发大火&#xff0c;经初步调查&#xff0c;起火原因就是充电宝发生短路。2024 年 2 月 19 日晚&#xff0c…

如何在项目申报中实施精细化管理?

项目申报作为企业获取资源、拓展市场、推动创新的关键环节&#xff0c;其成功与否往往直接关系到企业的战略发展。而要在众多申报者中脱颖而出&#xff0c;实现项目申报的成功&#xff0c;精细化管理成为关键因素之一。精细化管理强调的是对项目申报全过程的每一个细节进行精准…

2024 年 8 月公链行业研报:Layer 1、比特币 Layer 2 和以太坊 Layer 2 趋势分析

作者&#xff1a;Stella L (stellafootprint.network) 数据来源&#xff1a;Footprint Analytics 公链研究页面 8 月&#xff0c;加密货币市场波动剧烈&#xff0c;比特币和以太坊均遭遇了明显下跌。Layer 1 区块链普遍遭受市场颓势&#xff0c;然而&#xff0c;Tron 却逆势…

开源链动 2+1 模式 S2B2C 商城小程序助力品牌实现先营后销与品效合一

摘要&#xff1a;本文探讨了在当今市场环境下&#xff0c;如何做到先营后销、品效合一。通过研究社区用户喜好&#xff0c;打造适合家庭消费的商品&#xff0c;并结合开源链动 21 模式 S2B2C 商城小程序&#xff0c;实现品牌的精准定位、创新包装以及小规格产品供应&#xff0c…

单片机——ADC采样

1、什么是ADC采样&#xff1f; ADC是指将模拟信号转换成数字信号的过程。通俗理解ADC采样就是采集电路中的电压&#xff0c;通过数值的方式表现出来。以STM32F103系列为例&#xff0c;它可以反应0~4095&#xff0c;换句话说&#xff0c;它采集的电压数值上表现为0~4095&#xf…

文心快码获2024北京信息通信行业网络安全产品优秀应用

日前&#xff0c;2024北京互联网大会在京举办。在“网络安全与数据保护”分论坛上&#xff0c;百度智能代码助手文心快码Baidu Comate荣获北京信息通信行业网络安全产品优秀应用案例。 &#xfeff; 本场论坛聚焦“共筑安全底座 服务社会民生”主题&#xff0c;共商北京数字经…

江科大51单片机

文章目录 led灯led点亮led闪烁流水灯 独立按键按键点灯按键消抖按键实现二进制流水灯按键实现流水灯 数码管静态数码管显示动态数码管显示 矩阵键盘定时器/中断串口通信led点阵屏DS1302实时时钟蜂鸣器AT24C02DS18B20LCD1602直流电机驱动AD/DA红外遥控 led灯 创建项目&#xff…

2024自学网络安全的三个必经阶段(含路线图)

一、为什么选择网络安全&#xff1f; 这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等 一系列政策/法规/标准的持续落地 &#xff0c;网络安全行业地位、薪资随之水涨船高。 未来3-5年&#xff0c;是安全行业的黄金发展期&#xff0c;提前踏…

CoT让Transformer打破推理极限的讨论

论文简要 题目&#xff1a;Chain of Thought Empowers Transformers to Solve Inherently Serial Problems Denny Zhou等人提出的中间推理token&#xff0c;跟o1的核心技术CoT非常相似。 传统的Transformer模型的致命弱点&#xff0c;就是擅长并行计算&#xff0c;但不擅长串…