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

个人主页:平行线也会相交
欢迎 点赞 收藏✨ 留言✉ 加关注本文由 平行线也会相交 原创
收录于专栏【Linux专栏】
本专栏旨在分享学习Linux的一点学习心得,欢迎大家在评论区讨论
【走进Linux的世界】Linux---基本指令(2)_第1张图片

目录

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

ls *

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

比如ls *.c可以匹配以.c后缀结尾的所有内容:
【走进Linux的世界】Linux---基本指令(2)_第2张图片
再比如,ls test.*可以匹配所有以test.为开头的内容:
【走进Linux的世界】Linux---基本指令(2)_第3张图片
还有rm * -rf可以理解为全部删除了。
【走进Linux的世界】Linux---基本指令(2)_第4张图片

man指令

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

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

小插曲echo

echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用
在这里插入图片描述
也可以将字符串写入一个文件中,请看:
【走进Linux的世界】Linux---基本指令(2)_第5张图片
cat指令:打印文件内容,请看:
【走进Linux的世界】Linux---基本指令(2)_第6张图片

cp指令

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

选项:

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

将当前目录文件拷贝到当前目录中的一个新文件中:cp mytest.txt mytest_backup(即将mytest.txt拷贝到新文件mytest_backup),请看:
【走进Linux的世界】Linux---基本指令(2)_第7张图片
拷贝也可以拷贝到上级目录中的一个新文件中,如cp mytest.txt ../mytest.txt,请看:
【走进Linux的世界】Linux---基本指令(2)_第8张图片
现在,我们不在拷贝文件了,我们来试一试直接拷贝整个目录(lesson3)cp -r lesson3 lesson3_backup这里要注意,拷贝目录和拷贝文件不当然是一样的,请看:
【走进Linux的世界】Linux---基本指令(2)_第9张图片
cp -i的演示请看(这里拷贝是并没有询问我,故没有展示,仅仅值展示了删除目录的部分):
【走进Linux的世界】Linux---基本指令(2)_第10张图片

mv指令

mv:以用来移动文件或者将文件改名
【走进Linux的世界】Linux---基本指令(2)_第11张图片

mv d1 dir1:将当前目录d1重命名为dir1
【走进Linux的世界】Linux---基本指令(2)_第12张图片
mv dir1 ./d1:将当前目录dir1重命名为d1
【走进Linux的世界】Linux---基本指令(2)_第13张图片
mv d1 ../:将当前目录中的d1移动到上级目录下。
【走进Linux的世界】Linux---基本指令(2)_第14张图片
mv ../d1 .:将上级目录中的目录d1移动到当前目录。
【走进Linux的世界】Linux---基本指令(2)_第15张图片
mv d1 ../newd1:将当前目录中的目录d1移动到上级目录并重命名为newd1
【走进Linux的世界】Linux---基本指令(2)_第16张图片
mv dir1 ../newd1:如果newd1在上级目录中已经存在,则表示将当前目录中的dir1放到到上级目录中的newd1中去,请看:
【走进Linux的世界】Linux---基本指令(2)_第17张图片

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

cat指令

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

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

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

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

下面来看具体举例:

-n:对输出的所有行编号
【走进Linux的世界】Linux---基本指令(2)_第23张图片
【走进Linux的世界】Linux---基本指令(2)_第24张图片
我们发现上图给空行也编上号了,如果我们不想给空行编号的话,这个时候就用到选项-b了,请看举例:
【走进Linux的世界】Linux---基本指令(2)_第25张图片
还有一个选项是-s:不输出多行空行,即把多行的空行压缩成一行空行进行输出,请看:
【走进Linux的世界】Linux---基本指令(2)_第26张图片
cat -sn test.txt
【走进Linux的世界】Linux---基本指令(2)_第27张图片
cat -sb test.txt
【走进Linux的世界】Linux---基本指令(2)_第28张图片

more指令

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

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

【走进Linux的世界】Linux---基本指令(2)_第29张图片
这是一个10000行的超大文本,可以很明显的看到观察起来很不方便。所以cat指令不适合观察大文本。所以就引出了more指令

more -5000 test.txt
【走进Linux的世界】Linux---基本指令(2)_第30张图片
【走进Linux的世界】Linux---基本指令(2)_第31张图片
【走进Linux的世界】Linux---基本指令(2)_第32张图片
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
【走进Linux的世界】Linux---基本指令(2)_第33张图片
less指令支持文本的上下翻动。
less -500 test.txt
【走进Linux的世界】Linux---基本指令(2)_第34张图片

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

head指令

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

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

举个例子:

head -3 test.txt
【走进Linux的世界】Linux---基本指令(2)_第35张图片
head -9 test.txt
【走进Linux的世界】Linux---基本指令(2)_第36张图片

tail指令

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

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

还是来进行举例:

tail test.txt
【走进Linux的世界】Linux---基本指令(2)_第37张图片
tail -5 test.txt
【走进Linux的世界】Linux---基本指令(2)_第38张图片

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

第一步:head -1020 test.txt
【走进Linux的世界】Linux---基本指令(2)_第39张图片
此时已经有了前1020行。
第二步:保存一个temp.txt的临时文件,即head -1020 test.txt > temp.txt
【走进Linux的世界】Linux---基本指令(2)_第40张图片
cat temp.txt
【走进Linux的世界】Linux---基本指令(2)_第41张图片
第三步:tail -21 temp.txt
【走进Linux的世界】Linux---基本指令(2)_第42张图片
【走进Linux的世界】Linux---基本指令(2)_第43张图片

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

第一步:head -1020 test.txt
【走进Linux的世界】Linux---基本指令(2)_第44张图片
第二步:head -1020 test.txt | tail-21
【走进Linux的世界】Linux---基本指令(2)_第45张图片
在这个方法中,我们把head -1020 test.txt | tail-21 中的|符号称之为管道文件。这个管道文件不会真实的在磁盘中存在,这个管道文件是一种内存级的文件。
这个管道文件的作用就是把其左侧的程序输出并交给管道文件,然后其右侧的程序在从管道文件中把数据读取到自己的程序中。

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

cat test.txt | head -20
【走进Linux的世界】Linux---基本指令(2)_第46张图片
cat test.txt | head -20 | tail - 5
【走进Linux的世界】Linux---基本指令(2)_第47张图片
cat test.txt | head -20 | tail -5 | wc -l(统计文本行的个数)
【走进Linux的世界】Linux---基本指令(2)_第48张图片
上述就是管道文件的一个典型的例子。

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

好了,就到这里啦,各位友友们再见啦!!!
【走进Linux的世界】Linux---基本指令(2)_第49张图片

你可能感兴趣的:(Linux专栏,linux,服务器)