【linux-Day3】linux的基本指令<中>
- linux下的基本指令
- 📢man:访问linux手册页
- 📢echo:把字符串写入指定文件中
- 📢cat:查看目标文件的内容
- 📢cp:复制文件或目录
- 📢mv:重命名文件或目录/把文件或目录移动到指定目录中
- 📢which:查看指令->可执行文件的存放路径
- 📢alias:给指令取别名(临时)
- 📢more:分页查看目标文件的内容
- 📢less:分页查看目标文件的内容
- 📢head:显示指定文件的开头到显示器文件中。
- 📢tail:显示指定文件的结尾到显示器文件中
- 📢|:管道文件
- 总结一下~
linux下的基本指令
先明确一下几点:
- 在linux下一切皆文件,比如显示器(向显示器文件进行写入->write),键盘(从键盘文件中读内容->read),普通文件(write、read)…
- 不管是linux还是windows中,同一份目录下,不能存在同名文件。
-
- 指令和可执行程序都是可以被执行的->指令就是可执行程序!
- 在执行指令之前,先在系统中查找对应的指令->指令一定是在系统的某一个位置存在的!
- 指令的本质就是文件->可执行文件->直接安装到了系统的某种路径下。指令和我们自己写的代码编译好的程序,没有本质区别。安装程序相当于把程序的指令加入到系统指令存在的特定路径下,同样的,卸载程序相当于把程序的指令从系统指令中删掉。
📢man:访问linux手册页
linux命令有很多参数,linux系统调用接口也很多…,这些我们不可能全部记住。通过查看在线手册能帮我们解决这个问题。
man指令可以帮我们查看联机手册。
总结man的用法:
-
man 指令1:查看指令1的手册
-
man man:查看man的手册。
man有九个版本。比如man 1
指令用来查是linux普通指令;man 2指令用来查系统调用接口;man 3指令用来查C语言中的库函数。
如果在使用man指令的时候,没有说明指令的版本,比如man 指令1
,它的意思是,先去man 1里查指令1的手册,如果找不到,再去man 2里查指令1的手册,依次往后找。
-
man [选项] 命令:
man指令的后面也可以跟选项,下面是一些常用选项:- -k 根据关键字搜索联机帮助
- num 只在第num章节找
- -a 将所有章节的都显示出来,当按下q,他会继续往后面搜索,直到所有章节都搜索完毕再退出。
📢echo:把字符串写入指定文件中
总结echo的用法:
- echo 字符串1:默认把字符串1写到显示器文件中
- echo 字符串1 > 文件1:把字符串1写到文件1里面->把字符串写入到普通的磁盘文件1中。
其中,> 文件1
又叫输出重定向
,输出重定向是覆盖写入,通过输出重定向向目标文件进行写入的时候,分为两步:先打开文件->清空文件,再写入新内容。
- echo 字符串1 >> 文件1:把字符串1写到文件1里面。
其中,>> 文件1
又叫追加重定向
,通过追加重定向向目标文件进行写入的时候,是从文件的结尾开始写入。
通过echo指令写入的时候默认换行。
📢cat:查看目标文件的内容
总结cat的用法:
-
直接cat:输入什么打印什么->从键盘文件中读内容,写入到显示器文件中。
-
cat < 文件1:把文件1的内容写入到显示器文件中。
其中,< 文件1
叫做输入重定向。
在使用输出重定向,追加重定向时,如果文件名不存在,重定向命令会先自动创建文件。所以用touch指令/输出重定向/追加重定向都可以创建一个普通文件。
-
cat 文件1:把文件1的内容写入到显示器文件中
-
cat [选项] 文件1:cat指令后可以跟选项,常用选项如下:
- -b :对 非空输出行 编号
- -n :对 输出的所有行 编号
- -s :不输出 多行空行,也就是说如果有连续空行,把连续空行压缩成一行空行输出。
📢cp:复制文件或目录
总结cp指令的用法:
-
cp 源文件1 目的文件2:在当前目录下,如果目的文件2不存在,创建目的文件2,并把源文件1里的内容拷贝到目的文件2中;如果目的文件2存在,把源文件1中内容拷贝到目的文件2中。
-
cp -r 源目录1 目的目录2:在当前目录下,如果目的目录2不存在,创建目的目录2,并把源目录1里的内容拷贝到目的目录2中;如果目的目录2存在,把源目录1中内容拷贝到目的目录2中。
-r选项:将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链
接,则一律视为普通文件处理 -
cp 源文件1 相对路径/绝对路径:拷贝一份源文件1到指定路径下。
-
cp [选项] 源文件/目录 目的文件/目录:cp指令后面可以跟选项,以下是常用选项:
- -f:或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在 (不询问)
- -i 或 --interactive 覆盖文件之前先询问用户
📢mv:重命名文件或目录/把文件或目录移动到指定目录中
总结mv的用法:
-
mv 源文件1 xxx:把源文件1的名字改成xxx。
-
mv 源文件1 xxx:把源文件1移动到xxx目录下。
-
mv 源文件1 xxx:把源文件1移动到指定目录下并重命名。
在使用mv指令的时候,如何确定mv指令的作用是重命名文件,还是移动文件,还是二者都有呢?如果xxx里面有新名字,那么该mv指令肯定有重命名。如果xxx里面有路径,那么mv指令肯定有移动文件的作用。
-
mv [选项] 源文件1 xxx:mv指令可以带选项,
常用选项:- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖
-
重命名目录/移动目录到指定目录,和上面已经提高的四个用法是相同的。但是有一点要注意:
📢which:查看指令->可执行文件的存放路径
总结which的用法:
去指定目录(usr/bin)下,查指令的存放路径。
📢alias:给指令取别名(临时)
ls -l和ll,这两条指令的意思是一样的,其中ll就是ls -l的别名。
我们可以通过alias指令 给想要的指令取别名:
总结alias的用法:
alias 别名1=‘指令1’;:给指令1取别名为别名1,但断开连接后失效。
如果在同一次连接内,别名1又被设置成了其他指令的别名,则前一次设置也会失效。
📢more:分页查看目标文件的内容
用cat指令查看文件内容时,文件内容是直接全部显示出来的,所以cat不适合看大文本。more指令的功能也是查看文件的内容,但more在显示文件内容的时候,是从第一页开始分页显示的,按enter键,向后翻看下一页。所以more指令更适合看大文本文件,more的分页显示方式决定了more更方便用户自顶向下的查看大文本文件的内容。
总结more的用法:
-
more 文件1:查看文件1的的内容。
在查看过程中,按q结束查看;输入/xxx
在文件中搜索xxx内容。
-
more -n 文件1:显示文件1的前n行。
📢less:分页查看目标文件的内容
less指令的功能是分页显示目标文件的内容,特别是大文本文件,more指令能办到的,less指令都能办到。
不同的是,less指令不仅能向后翻看文件内容,还能向前翻看文件内容;less指令不仅能后下搜,还能向前搜。->通过less指令可以随意浏览文件。
总结less的用法:
- less 文件1 :分页查看文件1的内容
在查看过程中,按q
结束查看;/字符串
是向下搜索“字符串”;?字符串
是向上搜索字符串;PgUp
向前翻看文件内容;PgUp
向后翻看文件内容; - less [选项] 文件1:分页查看文件1的内容
常用选项如下:
- -i:忽略搜索时的大小写
- -N:显示每行的行号
📢head:显示指定文件的开头到显示器文件中。
总结head指令的用法:
-
head 文件1:打印文件1的开头十行到显示器中
-
head -n 文件1 :打印文件1的开头n行到显示器中
📢tail:显示指定文件的结尾到显示器文件中
总结tali指令的用法:
-
tail 文件1:打印文件1的结尾十行到显示器中
-
tail -n 文件1:打印文件1的结尾n行到显示器中
-
tail -f 文件1:使用这条指令可以方便的查看正在改变的日志文件,这条指令会把文件1里最尾部的内容显示在屏幕上,并且不断刷新,使用户看到最新的文件内容
📢|:管道文件
|
是一种符号,在linux中,|
被认为是管道文件。管道文件是内存级文件。
生活中的管道,有入口和出口,用来传输资源。计算机中管道文件|
亦是如此。
head 和 tail指令的作用分别显示文件的开头部分和结尾部分,那如何显示文件的中间部分?
有两种方法,一是借助临时文件、head指令、tail指令,二是通过管道文件|
。
总结 显示文件的中间内容的方法:
-
先
head -n1 文件1 > 临时文件2
再tail -n2 临时文件2
:把文件1的n2~n1行打印在屏幕上 -> 借助临时文件2,先把文件1的前n1行写入到临时文件2中,再把临时文件2中的后n2行写入显示器文件中。
这种方法需要在磁盘上创建一个临时文件。 -
head -n1 文件1 | tail -n2
:把文件1的n2~n1行打印在屏幕上 -> 借助管道文件,先在内存中读到文件1的前n1行内容,再把读到内容的后n2行写入到显示器文件中。
总结一下~
-
在linux下一切皆文件。
-
指令的本质就是文件->可执行文件->直接安装到了系统的某种路径下。
-
十二条linux指令:
- man:访问linux手册页
- echo:把字符串写入到指定文件中
>
:输出重定向(可创建文件);>>
:追加重定向(可创建文件);<
:输入重定向(不可创建文件)。- cat:查看目标文件的内容
- cp:复制文件或目录(⭐️)
- mv:重命名文件或目录/把文件或目录移动到指定目录中(⭐️)
- which:查看指令的存放路径
- alias:给指令取别名(临时)
- more/less:分页查看目标文件的内容
- head:显示指定文件的开头到显示器文件中。
- tail:显示指定文件的结尾到显示器文件中
- |:管道文件(利用管道文件截取文件的中间部分、管道文件是内存级文件)
-
xshell快捷方式:
- ctrl+c:在命令行中,终止因为程序或指令异常,而导致无法进行指令输入的情况
今天的linux学习暂时告一段落!