【Linux笔记】 基础指令(二)

风住尘香花已尽

日晚倦梳头


 重命名、剪切指令 -- mv

简介:

mv 命令是 move 的缩写,可以用来移动文件或者将文件改名,是 Linux 系统下常用的命令,经常用来备份文件或者目录

语法:

mv [选项] 源文件或目录 目标文件或目录 --->重命名
mv [选项] 文件 路径 --->剪切

常用选项:

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

(重命名)测试: 

如图所示:我们在该目录下创建了一个 mack.txt 文件利用 mv 命令改成了 tank.txt

 (剪切)测试

如图所示:我们将文件 tank.txt 剪切到上级目录中


查看目标文件的内容指令 -- cat

简介:

查看目标文件的内容

语法:

cat [选项][文件]

常用选项:

-b 对非空内容输出编号
-n 对输出所有行进行编号
-s 不输入多行空格

 查看目标文件的内容

我们创建了一个 mack.txt 文件,然后进行文本编写,cat 一下就可以看到编写的内容了

扩展:echo(向显示器文件进行写入)


Linux下一切皆文件,键盘、显示器等等皆以文件来看待

printf、cout 我们向显示器进行打印 -- 向显示器文件进行写入
scanf、cin 键盘读取数据 -- 从键盘文件中读取数据


如果我不想看到 hello linux 怎么办,在用 vim 进行编写(打开+保存退出)太麻烦了!

我们可以用 echo 将显示器中打印的内容写入文件中

echo "文件内容" >目标文件 -- >符号表示输入重定向(本来要写入显示器的内容写入到文件)

注意:

如果文件不存在,就创建它

【每次写入,都要从头写入,并且要将原内容清空,然后在写入】

那么我们想继续写不想让原内容清空该怎么办呢?

 -- 我们可以使用 >> 两个大于号表示 追加

echo有自动换行的功能

 cat -b [文件名]

首先我们在 mack.txt 中写入了以上内容

所以 cat -b 是对非空内容输出编号

cat -n [文件名]

所以 cat -n 是对所有内容进行编号

 cat -s [文件名]

所以 cat -s 是即使有多个空行最后只会输出一个

扩展 tac(逆序打印文件)

我们知道 cat 是按正序打印编写内容,而 tac则是逆序打印编写内容

选项与 cat 对应

cat 的局限性

cat 适合小文件对于大文件要查找相关的内容会很不方便 ~ 因为会刷屏


全屏方式分页显示文件内容指令 -- more

简介:

全屏方式分页显示文件内容,可以往下翻动但是不能回退

语法:

more [选项][文件]

常用选项:

-n 对输出的所有行编号 
-q 退出

cnt=1; while [ $cnt -le 1000 ]; do echo "hello $cnt"; let cnt++; done > log.txt

我们先用脚本语言制造从 1 到 1000 的文件写入 log.txt

我们先用 cat 查看一下

我们可以看到 cat 在查看我们大型文件的时候刷屏了,这样就很不好 ~

试试我们的 more 

more 在命令行只会显示在分屏中显示过的内容

我们按 回撤键 表示往下翻页,但是不能往上翻

我们按 q键 表示退出 


查看文件内容的最佳指令 -- less

简介:

less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。

less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看。但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容! 除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

语法:

less [选项/参数] 文件

常用选项:

指令:
-i 忽略搜索时的大小写 
-N 显示每行的行号 
参数:
/: 字符串:向下搜索“字符串”的功能 
?: 字符串:向上搜索“字符串”的功能 
n:重复前一个搜索(与 / 或 ? 有关) 
N:反向重复前一个搜索(与 / 或 ? 有关) 
q: q退出

首先我们可以了解到 less 浏览的内容并不会在命令行打印

其次 less 不仅可以下翻还可以回退

与参数搭配还能在分屏中快速查找自己想到的结果(/)

我们来试试 less -i

less 可以在搜索时忽略大小写


查看文件开头与结尾的内容 -- head --tail

简介:

head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。

语法:

head [选项/参数] 文件
tail [选项/参数] 文件

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头 10 行,tail 也是默认打印其相应文件的末尾 10  行

常用选项:

-n<行数> 显示行数

 head 默认是查看文件的前 10 个,tail 默认是查看文件的后 10 个

head、tail + n(显示行数)就是显示前、后的多少行

这都是取开头和结尾,那么如何取到中间的数据呢?

head、tail还可以搭配使用

格式

head <开始行数> [文件] | tail <行数>


这就用打了管道,中间的 " | " 符号就是管道,head 确定了管道的底部,而 tail 不正是显示末尾的 n 行吗,tail 就决定了管道的高度,等于从 head 开始的前 n 行


时间相关的指令 -- data

简介:

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

在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中常用的标记列表如下:

%H : 小时
%M : 分钟
%S : 秒 
%X : 相当于 %H:%M:%S 
%d : 日  
%m : 月份  
%Y : 完整年份  
%F : 相当于 %Y-%m-%d

在设定时间方面:

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

时间戳:

是从1970年1月1日(UTC/GMT的 午夜)开始所经过的秒数,不考虑闰秒。简单来讲:时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证的数据。 它的提出主要是为用户提供一份电子证据, 以证明用户的某些数据的产生时间

就是一个时间记录,对数据产生的时间进行一个唯一认证,不可更改

当前时间转化为时间戳:时间->时间戳:date +%s
当前时间戳转化为时间:时间戳->时间:date -d@当前时间戳

data 加一些选项便可以显示当前时间!!!

显示当前时间戳 

显示时间戳上的时间


时间戳:我们开发的时候一般都是要写开发日志的,而开发日志都要写上时间戳,以便将来查找文件


 

 查找日历指令 -- cal

简介:

cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。

语法:
 

cal [参数][月份][年份]

常用选项:

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

 显示当前年份的日历

显示当前年份的第几天,比如以上的黑框框表示今天是当前年份的第 132 天


 

查找文件所在位置 -- find 

简介:

用于在文件树中按照文件名深度优先、广度优先的匹配查找对应文件,并作出相应的处理(可能访问磁盘)

语法:

find [当前查找的路径] -选项 [文件名]

常用选项:

-name   按照文件名查找文件

 

以上我们就找到了 tank.c 文件所在的位置

那么我觉得一次查一个文件太麻烦,能不能同时查多个文件呢

这个时候就要用到我们的 -o 命令,表示 或者

find [查找路径] -name [文件名] -o -name [文件名]

扩展一:which -- 查找指令文件存放的位置

作用:which 用来在我们的 liunx 搜索指定指令存储位置

这些都是我们在linux中所用到的指令 ~ 

所以指令到底是什么???

指令就是一个可执行程序,就是一个文件

就相当于你之前写过的 C 代码原本程序后缀是 .c 通过编译链接生成了 .exe 的可执行文件,这个 .exe 就像我们的 linux 指令一样只要我们输入系统就会给出对应的操作

就如我这样带路径的使用也是可以的 ~ 只是 linux 帮我们简化了

还有不理解的可以看看我接下来的操作:

我先在当前路径下创建了一个 mack.cpp 文件

这个时候我们就有了一个 mack 的可执行文件绿色

如果我们在命令行直接输入 mack 是运行不了的,加上路径之后才可以

但是当我做一件事情,将 mack 拷贝到 bin 目录

以后我们想直接执行我们的命令,这样就可以直接运行了

卸载可执行程序

所以老铁们现在知道我们运行可执行文件为什么要带 ./ 了吗

如果你不带 ./ 系统就会默认在 bin 去找,就找不到指定的文件了

扩展二:alias -- 给指令取别名

在以上我们发现有 alias 这个东西 ~ 什么意思呢?

我们先来看:

我们还是用刚刚的代码生成可执行文件 ~ 

我们发现 系统简化过的ls 下是有颜色的,而路径下的 ls 是不带色的

这两种有什么不同呢?

因为我们之前用的 ls 是一种别名!!!

别急我们来看:

我们利用 alias 将 ls -al 取了别名 tank

这个时候我们输入 tank 就等于输入了 ls -al

为什么用取别名的命令可执行文件会带颜色呢?

因为我们别名默认带了--color=auto

而我们只要这样

就可以带颜色啦 ~ 

回顾 -- 我们之前说到过的 ll 指令就是 ls -l 指令的简化,其实没什么难的就是取别名


注意:系统别名是系统开机时赋予的,我们写的别名是内存级别,在系统关闭时就会被删除


 

搜寻字符串指令 -- grep 

简介:

在文件中搜索字符串,将找到的行打印出来

语法:

 grep [选项] 搜寻字符串 文件

常用选项:
 

-i :忽略大小写的不同,所以大小写视为相同 
-n :顺便输出行号 
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行

我们在 log.txt 中查找带有 '9' 的字符串过滤出来

grep -i 忽略大小写的查找

grep -v 将不是目标字符串的过滤出来


 压缩文件、解压文件 -- zip、unzip

简介:

zip命令的功能是用于压缩文件,解压命令为unzip。通过zip命令可以将文件打包成 .zip 格式的压缩包,里面会包含文件的名称、路径、创建时间、上次修改时间等等信息

为什么要打包压缩?

减少网络传输的数据量,将多个文件合并成一个,方便网络传输!!!

语法:

语法: zip 压缩文件.zip 目录或文件
语法: unzip 压缩文件.zip 解压目录

常见选项:

-r 递归处理,将指定目录下的所有文件和子目录一并处理 

安装 zip 的命令:

yum install -y unzip
yum install -y zip

 

我们现在 dir3 目录下创建一个压缩包并剪切到上级目录 ~ 这个过程相当于下载

我们在解压的时候发现:我们解压的目录是空的,这是为什么呢?

因为我们在打包一个目录的时候要知道目录是一颗树要递归打包,而一个文件则是直接打包(这里就不展示了)

这下打包压缩之后再解压就已经完成啦 !!!

先介绍到这里啦~

有不对的地方请指出💞

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【吴恩达机器学习-week2】多个变量的特征缩放和学习率问题

特征缩放和学习率&#xff08;多变量&#xff09; 目标 利用上一个实验中开发的多变量例程在具有多个特征的数据集上运行梯度下降探索学习率对梯度下降的影响通过 Z 分数归一化进行特征缩放&#xff0c;提高梯度下降的性能 import numpy as np np.set_printoptions(precisio…

Windows 10 Manager (Win10优化工具),中文破姐版 v3.9.3

01 软件介绍 Windows 10 Manager是一款为Win10操作系统设计的综合优化工具。包含逾40种不同的功能模块&#xff0c;旨在全方位地提升系统性能。其核心效用体现在对Win10的优化、调整、清理、加速和修复方面。能够显著提高系统的运行速度&#xff0c;并有效地排查及解决系统问题…

C# Linq中的自定义排序

1.开发过程中&#xff0c;会遇到OrderBy/OrderByDescending排序无法满足的情况&#xff0c;此时就需要自定义排序&#xff0c;按照想要的排序规则取排序&#xff0c;比如订单的状态等等。 2.自定义泛型比较器代码如下&#xff1a; /// <summary>/// 自定义泛型比较器(用…

ISIS学习二——与OSPF相比的ISIS报文以及路由计算

目录 一.ISIS支持的网络类型 1.OSPF支持 2.ISIS支持 二.ISIS最优路径的选取 &#xff08;1&#xff09;.ISIS开销值设置 1.全局开销 2.接口开销 3.根据带宽设置开销 &#xff08;2&#xff09;.ISIS的次优路径 三.ISIS报文格式 1.ISIS专用报头——TLV 2.ISIS通用头…

容器中的单例集合(二)——List接口的实现类之ArrayList

根据接口的定义我们知道&#xff0c;接口的作用是定义标准或者规定&#xff0c;要满足接口中的要求就需要定义一个实现类来实现接口中定义的标准。List接口的常用实现类有ArrayList、Vector、Stack以及LinkedList。其中ArrayList类是较为基础的一个实现类&#xff0c;理解Array…

【Unity Shader入门精要 第6章】基础光照(一)

1. 什么是光照模型 光照原理 在真实世界中&#xff0c;我们能够看到物体&#xff0c;是由于眼睛接收到了来自观察目标的光。这里面包括两种情况&#xff1a;一部分是观察目标本身发出的光&#xff08;自发光&#xff09;直接进入我们的眼睛&#xff0c;另一部分是其他物体&am…

数字社交风潮:解析Facebook的影响力

随着互联网的普及和科技的发展&#xff0c;数字社交媒体已经成为现代社会不可或缺的一部分。在众多的社交媒体平台中&#xff0c;Facebook作为其中的佼佼者&#xff0c;影响着数以亿计的用户。本文将深入解析Facebook的影响力&#xff0c;探讨其在数字社交风潮中的地位和作用。…

springcloud alibaba微服务框架涉及的技术

一、微服务架构中核心模块及其使用技术总览 二、各模块详细说明 1、注册中心 该模块主要功能为 自动提供服务的注册与发现&#xff0c;集中式管理服务&#xff0c;让 服务调用端发现服务&#xff0c;让服务提供端注册服务&#xff0c;倘若没有注册中心&#xff0c;那客户端就…

【Java基础】初识正则表达式

正则表达式只适用于字符串 匹配matches 实际使用的是String类中定义的方法boolean matches(String regex) public static void piPei( ){String regex"[1][356789]\\d{9}";boolean boo"14838384388".matches(regex);System.out.println(boo); }验证qq号…

前后端完全开源!功能丰富的在线教室项目:Agora Flat

Agora Flat&#xff1a;高效集成的在线教室解决方案&#xff0c;重塑互动学习新体验。- 精选真开源&#xff0c;释放新价值。 概览 Agora Flat是在GitHub平台上公开分享的一个全面开源项目&#xff0c;它精心设计为一个高性能的在线教室解决方案&#xff0c;旨在便捷地搭建支持…

政安晨:【Keras机器学习示例演绎】(四十二)—— 使用 KerasNLP 和 tf.distribute 进行数据并行训练

目录 简介 导入 基本批量大小和学习率 计算按比例分配的批量大小和学习率 政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras机器学习实战 希望政安晨的博客能够对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在…

Linux提权--内核漏洞--web用户提权(脏牛)本地提权(脏管道)

免责声明:本文仅做技术交流与学习... 目录 Linux-内核漏洞Web用户提权-探针&利用-脏牛dcow nmap扫描目标IP及端口 导入脚本,进行探针 通过MSF发现目标机器存在脏牛漏洞 ---上传信息搜集的文件,查找漏洞,利用漏洞,继续上传EXP. --密码改了,再用xshell连一下就行了. …

对话易参创始人黄怡然:股权能不能赋能企业增长?| 极新企服直播实录

“ 致所有爱画饼的老板 ” 整理 | 云舒 编辑 | 小白 出品&#xff5c;极新 2022年以前&#xff0c;股权激励作为企业实现增长、吸引人才、保留人才并大幅度激发人才价值的重要手段&#xff0c;几乎成为每一个企业的标配。但是&#xff0c;现在这个时代&#xff0c;股权激励几…

Python 将Excel转换为多种图片格式(PNG, JPG, BMP, SVG)

目录 安装Python Excel库 使用Python将Excel工作表转换为PNG&#xff0c;JPG或BMP图片 使用Python将Excel特定单元格区域转换为PNG&#xff0c;JPG或BMP图片 使用Python将Excel工作表转换为SVG图片 有时&#xff0c;你可能希望以图片形式分享Excel数据&#xff0c;以防止他…

基于遗传优化的双BP神经网络金融序列预测算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于遗传优化的双BP神经网络金融序列预测算法matlab仿真&#xff0c;采用的双BP神经网络结构如下&#xff1a; 2.测试软件版本以及运行结果展示 MATLAB2022A版本…

【讲解下目标追踪】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

个人微信api

简要描述&#xff1a; 退出群聊 请求URL&#xff1a; http://域名地址/quitChatRoom 请求方式&#xff1a; POST 请求头Headers&#xff1a; Content-Type&#xff1a;application/json Authorization&#xff1a;login接口返回 参数&#xff1a; 参数名 必选 类型 …

物流EDI:GEFCO EDI 需求分析

GEFCO专注于汽车物流领域近70年&#xff0c;是欧洲整车市场的物流供应商&#xff0c;也是欧洲十大领先的运输和物流集团之一。GEFCO的业务遍及六大洲&#xff0c;业务覆盖150个国家&#xff0c;在全球拥有庞大的员工队伍&#xff0c;在全球汽车行业的挑战中茁壮成长。为汽车制造…

MySQL-索引篇

文章目录 什么是索引&#xff1f;索引的优缺点索引底层数据结构选型Hash表二叉查找树AVL树红黑树B树&B树 索引类型总结主键索引二级索引聚集索引与非聚集索引聚集索引非聚集索引 覆盖索引与关联索引覆盖索引联合查询最左前缀匹配原则 索引下推如何正确使用索引选择合适的字…

iOS Xcode Debug View Hierarchy 查看视图层级结构

前言 我们难免会遇到接手别人项目的情况&#xff0c;让你去改他遗留的问题&#xff0c;想想都头大&#xff0c;&#x1f602;可是也不得不面对。作为开发者只要让我们找到出问题的代码文件&#xff0c;我们就总有办法去解决它&#xff0c;那么如何快速定位问题对应的代码文件呢…