【走进Linux的世界】Linux---基本指令(2)

news/2024/11/10 4:51:22

个人主页:平行线也会相交
欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 平行线也会相交 原创
收录于专栏【Linux专栏】🎈
本专栏旨在分享学习Linux的一点学习心得,欢迎大家在评论区讨论💌
在这里插入图片描述

目录

  • ls *
  • man指令
    • 小插曲echo
  • cp指令
  • mv指令
  • cat指令
  • more指令
  • less指令
  • head指令
  • tail指令

ls *

ls有个对应的通配符*,而*代表零个或多个任意字符
举个例子:

比如ls *.c可以匹配以.c后缀结尾的所有内容:
在这里插入图片描述
再比如,ls test.*可以匹配所有以test.为开头的内容:
在这里插入图片描述
还有rm * -rf可以理解为全部删除了。
在这里插入图片描述

man指令

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是man 语法: man [选项] 命令

常用选项:
1 是普通的命令
2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文
件)
3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6 是给游戏留的,由各个游戏自己定义
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig

小插曲echo

echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用
在这里插入图片描述
也可以将字符串写入一个文件中,请看:
在这里插入图片描述
cat指令:打印文件内容,请看:
在这里插入图片描述

cp指令

语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
特别注意: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。

选项:

  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
  • -r 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

将当前目录文件拷贝到当前目录中的一个新文件中:cp mytest.txt mytest_backup(即将mytest.txt拷贝到新文件mytest_backup),请看:
在这里插入图片描述
拷贝也可以拷贝到上级目录中的一个新文件中,如cp mytest.txt ../mytest.txt,请看:
在这里插入图片描述
现在,我们不在拷贝文件了,我们来试一试直接拷贝整个目录(lesson3)cp -r lesson3 lesson3_backup这里要注意,拷贝目录和拷贝文件不当然是一样的,请看:
在这里插入图片描述
cp -i的演示请看(这里拷贝是并没有询问我,故没有展示,仅仅值展示了删除目录的部分):
在这里插入图片描述

mv指令

mv:以用来移动文件或者将文件改名
在这里插入图片描述

mv d1 dir1:将当前目录d1重命名为dir1
这里是引用
mv dir1 ./d1:将当前目录dir1重命名为d1
在这里插入图片描述
mv d1 ../:将当前目录中的d1移动到上级目录下。
在这里插入图片描述
mv ../d1 .:将上级目录中的目录d1移动到当前目录。
在这里插入图片描述
mv d1 ../newd1:将当前目录中的目录d1移动到上级目录并重命名为newd1
在这里插入图片描述
mv dir1 ../newd1:如果newd1在上级目录中已经存在,则表示将当前目录中的dir1放到到上级目录中的newd1中去,请看:
在这里插入图片描述

指令的本质是可执行程序,和我们自己代码编译好的程序没什么区别。指令是在系统中,特定的路径下存在的,一定是某种可执行程序。

cat指令

cat指令:打印文件中的内容。

echo "hello linux" > out.txt:本来应该写到显示器文件的内容,最终写到了文件out.txt中去。这种行为是重定向的行为。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
ll:将文件的属性数据写入到显式文件中去。
输出重定向:
向目标文件写入的时候,覆盖写入,清空文件,写入新内容。
在这里插入图片描述
追加重定向:
在这里插入图片描述
cat指令后如果什么都不跟,则默认从键盘中读取数据:
在这里插入图片描述
输入重定向(一种打印文件内容的写法):本来应该从键盘文件中读取,现在不用从键盘文件读取,而是从指定的文件中读取。
在这里插入图片描述

语法:cat [选项][文件]
功能: 查看目标文件的内容
常用选项:

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

下面来看具体举例:

-n:对输出的所有行编号
在这里插入图片描述
在这里插入图片描述
我们发现上图给空行也编上号了,如果我们不想给空行编号的话,这个时候就用到选项-b了,请看举例:
在这里插入图片描述
还有一个选项是-s:不输出多行空行,即把多行的空行压缩成一行空行进行输出,请看:
在这里插入图片描述
cat -sn test.txt
在这里插入图片描述
cat -sb test.txt
在这里插入图片描述

more指令

cat指令不适合看大文本,所以cat适合小文本,more指令适合看大文本。
语法:more [选项][文件]
功能:more命令,功能类似 cat
常用选项

-n:对输出的所有行编号
q:推出more

在这里插入图片描述
这是一个10000行的超大文本,可以很明显的看到观察起来很不方便。所以cat指令不适合观察大文本。所以就引出了more指令

more -5000 test.txt
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
more命令可以逐行的进行下翻,然后把我们的文本展现给我们。

less指令

  • less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
  • less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看。
  • 但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
  • 除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

语法: less [参数] 文件
功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
选项

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

来看举例:

less test.txt
在这里插入图片描述
less指令支持文本的上下翻动。
less -500 test.txt
在这里插入图片描述

more指令和less指令推荐使用less指令,因为less指令可以进行上下文的翻动。

head指令

head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。
语法:head [参数]… [文件]…
功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:

-f:循环读取。
-n<行数> 显示行数

举个例子:

head -3 test.txt
在这里插入图片描述
head -9 test.txt
在这里插入图片描述

tail指令

tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。
语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项

-f:循环读取
-n<行数> 显示行数

还是来进行举例:

tail test.txt
在这里插入图片描述
tail -5 test.txt
在这里插入图片描述

现在,我们如果想要截取1000到1021行的这一小段,我们应该怎么做呢?请看:
方法一(head和tail以及重定向的方法):

第一步:head -1020 test.txt
在这里插入图片描述
此时已经有了前1020行。
第二步:保存一个temp.txt的临时文件,即head -1020 test.txt > temp.txt
在这里插入图片描述
cat temp.txt
在这里插入图片描述
第三步:tail -21 temp.txt
在这里插入图片描述
在这里插入图片描述

这种方法需要我们实实在在的创建一个文件,这个文件确实是在磁盘当中存在的文件,但是如果我们不想创建临时文件的话我们应该怎么做呢?请看:
方法二:

第一步:head -1020 test.txt
在这里插入图片描述
第二步:head -1020 test.txt | tail-21
在这里插入图片描述
在这个方法中,我们把head -1020 test.txt | tail-21 中的|符号称之为管道文件。这个管道文件不会真实的在磁盘中存在,这个管道文件是一种内存级的文件。
这个管道文件的作用就是把其左侧的程序输出并交给管道文件,然后其右侧的程序在从管道文件中把数据读取到自己的程序中。

现在再来举一个管道文件的例子,请看:

cat test.txt | head -20
在这里插入图片描述
cat test.txt | head -20 | tail - 5
在这里插入图片描述
cat test.txt | head -20 | tail -5 | wc -l(统计文本行的个数)
在这里插入图片描述
上述就是管道文件的一个典型的例子。

以上就是本文章的全部内容,依然是讲述了Linux中的一些最基本的指令,需要我们不断重复地去进行练习,同时一些理论知识也是非常重要的,大家也要重视起来。

好了,就到这里啦,各位友友们再见啦!!!
在这里插入图片描述


http://www.niftyadmin.cn/n/393685.html

相关文章

chatgpt赋能python:Python取款:让你的银行账户管理更智能

Python取款&#xff1a;让你的银行账户管理更智能 介绍 Python不仅是一种全球广泛应用的计算机编程语言&#xff0c;而且还拥有很多适合财务管理和数据处理的工具&#xff0c;用于提高效率和减少错误。本文将重点介绍如何使用Python自动管理银行账户的取款&#xff0c;以及…

二叉树的链式结构 - C语言(含有大量递归)

目录&#xff1a; &#x1f354;前言 &#x1f354;二叉树链式结构的实现 &#x1f35f;基本构架 &#x1f60d;代码&#xff1a; &#x1f354;二叉树的遍历 &#x1f35f;前序遍历 &#x1f35f;中序遍历 &#x1f35f;后序遍历 &#x1f35f;层序遍历 &#x1f53…

SpringBoot+MyBatis 搭建项目基本框架

参考资料:mall整合SpringBootMyBatis搭建基本骨架 一 背景 做的项目多了&#xff0c;就会发现&#xff0c;每次新项目起步&#xff0c;都是一样的。应该整理一个通用的模板来进行快速启动新项目。 二 使用到的框架简介 1.SpringBoot SpringBoot可以让你快速构建基于Spring…

信息论与编码 SCUEC DDDD 期末复习

1.证明熵的可加性 2.假设一帧视频图像可以认为是由3*10的五次方个像素组成&#xff08;每像素均独立变化&#xff09;&#xff0c;如果每个像素可取128个不同的等概率亮度表示。请计算出每帧图像含多少信息量&#xff1f;若有一口述者在约12000个汉字的字汇中选400个字来口述此…

C++——多态与虚表

目录 1.多态的实现 2.虚表 2.1虚函数重写是怎么实现的 2.2多态的原理 2.3静态绑定与动态绑定 3.单继承体系中的虚函数表 ​编辑4.多继承体系中的虚函数表 5.菱形继承的虚函数表 6.菱形虚拟继承的虚函数表 1.多态的实现 在C中&#xff0c;要想实现多态&#xff0c;必…

mysql数据类型有哪几种

Mysql支持的多种数据类型主要有&#xff1a;数值数据类型、日期/时间类型、字符串类型。 整数 浮点数&定点数 注&#xff1a;定点数以字符串形式存储&#xff0c;对精度要求高时使用decimal较好&#xff1b;尽量避免对浮点数进行减法和比较运算。 时间/日期类型 字符串类型…

在编程中,代理、委托、回调、钩子、句柄、打桩的区别

文章目录 代理委托委托与代理的区别 回调回调函数回调函数与普通函数的区别 钩子广义的钩子钩子与代理的区别钩子与委托的区别钩子与回调函数的区别 句柄句柄与钩子的区别 打桩打桩与代理的区别 代理 代理&#xff08;proxy&#xff09;&#xff1a;被代理类写好一套 API 的实现…

chatgpt赋能python:Python取消合并单元格

Python取消合并单元格 在Excel中&#xff0c;合并单元格是一个非常常见的操作&#xff0c;它可以将多个单元格合并成一个单元格。这样可视化效果会更好&#xff0c;但是实际上会影响数据的计算和操作。如果你想取消这个操作&#xff0c;手工操作可能会非常费时间。不过&am…