Linux基本指令

发布时间:2023年12月17日

从这篇文章开始,就正式进入到Linux学习阶段。

我们先从Linux基本指令开始学习:

1.【pwd】

pwd这个指令用来展示当前Linux系统中所处的路径。

2.【ls】

ls这个指令用于罗列出当前路径下的文件名。由于每个人的目录不同,显示出结果也不同。

?3.【mkdir】

mkdir这个指令用于在当前路径下,创建一个新的目录。

?4.【cd】

cd这个指令用于进入指定的目录

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

cd - :跳转到我们最近一次所处的路径下

cd ~:进入用户家目录

5.【clear】

clear这个指令用于清屏。

6.【touch】

touch这个指令用于在当前目录下,创建一个新的普通文件。

?7.【whoami】

whoami这个指令用于查看当前正在使用Linux系统的人是谁。

进行到这里,我们先来谈一谈Linux周边知识,然后继续来总结Linux基本指令。

1.文件=文件属性+文件内容,文件属性也是数据,也要占内存。未来对文件的操作,无外乎:对属性的操作、对内容的操作。

?2. /? : 是Linux的路径分隔符,\? : 是windows的路径分割符。两个路径分割符之间,一定是一个文件夹。路径最末端一定是一个普通文件或者文件夹。

3.为什么要有路径??因为在访问任何文件之前,都必须先找到这个文件,并且文件的路径必须有唯一性。

4. 当我们使用? ls -la? 这个指令时,会看到下图结果,在Linux中,.开头的文件代表隐藏文件。.用来表示当前路径,..用来表示上级路径。为什么要有.和..呢?..可以方便我们进行路径的回退,毕竟我们不但要进入,也要能出来。.方便我们找到当前目录下的一个文件。

?继续上面的指令:

8.【alisa】

alisa这个指令用来给其他命令起别名。

9.【stat】

stat这个指令用来显示文件的详细信息。

10.【tree】

tree这个命令以树状形式显示目录结构。

?提示

tree / 时会出现失控打印的情况,ctrl + c是终止异常的命令。

11.【rm】

rm这个指令用于删除文件或目录。

删除普通文件:rm 普通文件

删除目录:rm -rf 目录

r代表递归 ,f代表强制

* :在Linux中是一个通配符!

12.【cp】

cp这个指令用于拷贝文件:

cp src dst? ?---? 如果src是目录,则src直接拷贝到dst这个目录下了;如果src是带路径的文件名,则拷贝到指定目录,顺便进行重新命名。src和dst都可以携带绝对或者相对路径进行拷贝。

13.【mv】

mv指令主要有以下几个作用:

1)在指定目录下,对一个文件或者目录进行重命名

2)将指定目录下的文件或者目录,“剪切”到指定的目录下

3)不仅要剪切,还要在剪切的同时,顺便进行一下命名。(如上图所示)

学习了这么多指令,我们的目的是要在Linux系统中进行编程,那么如何快速写出代码?

有以下几个步骤:

1.nano? 源文件

2.写完后,ctrl x -> y -> 回车

3.gcc test.c

4../a.out

14.【more和less】

在学习这两个指令之前,我么先来学习 “>”---输出重定向。

“>”这个指令有两个作用:

1.创建文件

2.本来应该显示到显示器上的数据,显示到文件中。

Linux理念:Linux中一切皆文件。把显示器设备看做显示器文件,向显示器打印,向显示器文件进行写入。

‘>’将本来应该打印到显示器上的重定向到log.txt文件中,因此叫输出重定向

在每次使用>输出重定向时,首先把当前文件的内容清空,然后写入新的内容,如下所示。

因此,我们可以使用>:

1.创建一个文件>file

2.如果文件存在,那么清空一个文件>file

那么,如果不想每次清空,而是在原有内容上追加,需要使用‘>>’,这叫做追加重定向

另外,还有<,表示输入重定向,本来应该从键盘文件中读取,转而重定向为从普通的文件中读取:

因此,总结一下:

command > filename :输出重定向

command >> filename:追加重定向

command < filename:输入重定向

接下来,我们继续学习more指令:当我们查看大文件时,有可能会有多行,more可以打满一屏,就停下来,让用户下翻,逐行进行阅读。

less指令:可以查看大文本,既可以上翻,也可以下翻,推荐使用

more/less用法:

more/less filename

另外,如果想查看大文件的头几行信息,可以使用head big.txt,默认查看前10行。如果想查看前5行,那么可以直接用head -5 big.txt。

与head相对应,如果想查看文件结尾,可使用tail,tail big.txt默认把文件的后10行提取出来。如果想查看前5行,那么可以直接用tail?-5 big.txt。

那么现在有这样一个问题,假设big.txt有10000行,那么怎么提取8000-8010行呢?

看这样一行代码:

head -8010 big.txt | tail -11

其中,|叫做管道,管道就有入口和出口,管道是用来传输资源的,那么在计算机中,资源是什么呢?数据!!!因此,管道? |? 必然有一个入口,有一个出口,管道的作用是上一条指令的输出数据交给下一条指令,下一条指令把数据从管道中拿出来

再来补充另一条指令wc,wc用来统计文本行数。

wc -l big.txt

?那么,我们用管道级联,级联多条指令,就可以查看行数。

head -8010 big.txt | tail-11 | wc -l

?还可以级联,对文本逆置。

head -8010 big.txt | tail-11 | tac

级联多条指令,就像流水作业一样,先粗加工,再精加工。

15.【时间相关指令】

在linux中,使用date查看时间

但是,这种格式,我们看起来不舒服,所以我们可以格式化输出:

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

date +%s可以显示当前时间的时间戳(格林威治时间)

?我们也可以将时间戳转换为对应时间:

16.【cal】

cal:查看当前月份日历

cal 年份:查看对应年份日历

cal -3:查看当前月份以及前后两个月的日历

17.【find】

直接看指令:

find? /? -name test.c

这句指令的意思是:在根目录/(可以替换其他目录)下按名字(-name)查找test.c的文件。find是真正的在系统的树形结构中进行文件查找的

find的使用:

find 你要查找的路径 -opt(name) filename

18.【grep】

这个指令的作用是在文件中搜索字符串,将找到的行打印出来

grep 'bit' simple.txt? --? 将包含bit的行打印出来

grep 'bit' -n simple.txt? --? 将包含bit的行打印出来,并加上行号

grep 'bit' -v?simple.txt? --? 反向选择,显示出没有搜寻字符串内容的那一行

grep 'bit' -i?simple.txt? --? 忽略大小写的不同,所以大小写视为相同

19.【zip/unzip】

这组是打包压缩指令,为什么要打包和压缩呢?

a.缩小体积,占据磁盘空间比较小,下载快

b.不会轻易的丢失文件

对目录进行打包压缩:

将xxx目录压缩:zip -r xxx.zip?xxx(-r表示递归)

解压到tmp目录:unzip xxx.zip -d /tmp

20.【tar】

这是另一个打包压缩指令:

?这里有很多个选项,但是我们只需要记住几个常用的组合就行!

tar -cvzf name.tgz file1 file2 (打包压缩)

tar -xvzf name.tgz [-C path]?(解压)

上面我们说了linux中两个压缩指令,那么我们为什么要打包压缩呢?是便于网络传输

基于xshell进行压缩包的windows和linux进行互传(压缩包) windows<->linux

scp xxx.tgz 用户名@另一台linux机器的ip:你要拷贝的路径? ?linux<->linux

21.【bc】

bc命令可以很方便的进行浮点运算

22.【uname】

uname -r ---- 查看系统的内核版本

x86:32位机器

x86_64(x64):64位机器

el7:centos 7

23.【重要的几个热键】

【Tab】按键---具有命令补全档案补齐的功能

ctrl+c:让当前的程序停掉

ctrl+d:退出登录

ctrl+r:对历史命令进行搜索

24.【关机】

一般不要关闭linux云服务器。

shutdown **常见选项**

-h :将系统的服务停掉后,立即关机。

-r :在将系统的服务停掉之后就重新启动。

-t sec:-t后面加数秒,即过几秒后关机的意思。

以上就是Linux中的常见指令,希望各位能够掌握好这些基本指令啊!

文章来源:https://blog.csdn.net/qq_48460693/article/details/134467392
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。