“我会定期分享我的学习和工作经验,也欢迎大家留言和交流,让我们共同学习和进步!感谢大家的支持!”
系列文章
初识Linux(上).妈妈再也不用担心我Linux找不到门了。
初识Linux(中).妈妈再也不用担心我Linux找不到门了。
初识Linux(下).妈妈再也不用担心我Linux找不到门了。
语法: man [选项] 命令
功能:Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是
man
-k 根据关键字搜索联机帮助
num 只在第num章节找
-a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。
解释一下,面手册分为8章
1 是普通的命令
2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6 是给游戏留的,由各个游戏自己定义
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig
输入man -ls
显示如下结果:
可以看到有关于ls的使用手册列出来了,这时候按回车,或者键盘的上下进行上下翻。按ctrl+z
退出
但是这还不是man指令的真正用法
我们可以输入man mam
去了解下该指令,可以发现它有对应的章节编号,每个章节都有对应的信息类型
所以该指令真正的用法是带编号的使用,不带编号,默认查询的是第一个
输入man 3 ls
查看库的调用(库函数)
语法: cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
常用选项:
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
输入ll
——cp 123.txt a
——cd a
——ll
显示如下结果
注意:Linux跟windows一样,同一个目录下,不允许存在同名文件
语法: cp [选项] 源文件或目录 目标文件或目录
功能:
- 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的
目录中。- 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它
将所给的源文件或目录重命名为给定的目标文件名。- 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至
目标目录中。
常用选项:
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
将文本文件’‘123.txt’‘重命名为’‘321.txt’’
输入mv 123.txt 321.txt
达到如下效果
那么移动功能怎么实现呢,非常简单,把原来要命名的名字该为要移动的路径就可以了
将文本文件"321.txt"移动到目录a中,操作如下
输入mv 321.txt a
——ll
达到以下效果
语法:nano [文本类文件]
功能:Linux中的计事本
321.txt
进行编辑输入nano 321.txt
,达到如下界面,下面的^
都对应了一个指令,它的意思是ctrl
键,比如^ x
意思是ctrl +x
退出。
因此我们可以在Linux中进行编程了,创建一个Test.c文件用nano打开
输入基本的c程序并且保存
保存方式(ctrl+x
->y
->回车)
保存好后,输入gcc Test.c
回车,会生成一个a.out文件,此时执行该文件就可以看到程序的运行结果了
如果nano
指令没有作用,需要进行安装
输入yum install -y nano
进行安装。
语法:cat [选项][文件]
功能: 查看目标文件的内容
常用选项:
-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行
输入cat Test.c
显示如下内容:
还可以倒着打印,把cat
到着写tac
输入tac Test.c
显示如下内容:
语法:more [选项][文件]
功能:more命令,功能类似 cat
常用选项:
-n 对输出的所有行编号
q 退出more
cat会一次性打印所以内容,不管你文本有多大,一次性全部打印
more一次性打印一屏幕,满屏幕就停止打印,按方向下键进行打印,让用户下翻,满屏幕后逐行打印。
当前打印的是有10000行的数据:下方的%3表示打印的进度,按ctrl+z退出打印
语法:less [参数] 文件
功能:
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
常用选项:
-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit
可以用来查看大文本,推荐使用
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。
语法: head [参数]… [文件]…
功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
选项:
-n <行数> 显示的行数
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.
语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
选项:
-f 循环读取
-n<行数> 显示行数
输入tail -3 321.txt
那么问题来了,我要显示6000行到6010行怎么办?
输入head -6010 321.txt |tail -11
命令中的
|
在Linux中叫管道,可以这样理解,先是hend
指令显示1-6010行
然后tail
通过|
(管道)拿到了head显示的数据后运行,显示后6010的后11行,这样就显示出来了6000行到6010行
感谢您阅读我的博客,我希望您能从中获得一些启发和帮助。如果您喜欢这篇博客,请分享给您的朋友和家人,也欢迎留下您的评论和反馈。您的支持是我继续分享和创作的动力。谢谢!希望我们能在未来的博客中再次相见。祝您一切顺利,期待与您再次相会!