Linux系统基本操作总结文档

一、linux系统目录结构

1.目录结构及目录路径

在这里插入图片描述

2.Linux基金会颁发了文件系统层次结构标准(FHS)

在这里插入图片描述
  在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
  /etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
  /bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
  值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而**/sbin, /usr/sbin 则是给root使用的指令**。
  /var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里

二、处理目录的常用指令

pwd:显示目前的目录
ls:列出目录及文件名
cd:切换目录
cp:复制文件或目录
mv:移动文件与目录,或修改文件与目录的名称
rm:移除文件或目录
mkdir:创建一个新的目录
redir:删除一个空的目录
你可以使用man[命令]来查看各个命令的使用文档,如:man cp
1.pwd命令:用于显示用户在文件系统中的当前位置(当前目录,一键定位功能);命令执行结果显示为绝对路径名。
2.ls命令:当前目录下有什么文件,后面加查看的文件目录,省略不写 看的就是当前目录

 [root@www ~]# ls [-aAdfFhilnrRSt] 目录名称
[root@www ~]# ls [--color={never,auto,always}] 目录名称
[root@www ~]# ls [--full-time] 目录名称

ls -a(不忽略以点开头的文件(显示隐含文件))
ls -l(显示内容更加全面,如文件的权限位,属于哪个用户名称,修改时间,大小(字节等)
ls -R(如果目录里面含有子目录,会递归显示)
文件的权限(用户(创建者 同组用户 其它用户))
ls-d 仅列出目录本身,而不是列出目录内的文件数据(常用)
在这里插入图片描述
3.cd命令 :改变/切换目录(一键传送功能
绝对路径:cd /home/joshua/work;相对路径:cd project/docs
cd 回到家(home)目录
cd … 回到上一级目录
cd - 回到上一次的工作目录
4.cp命令 (复制某文件到某文件下,如cp a c (把a文件复制到c文件中去)

[root@www ~]# cp [-adfilprsu] 来源档(source) 目标档(destination)
[root@www ~]# cp [options] source1 source2 source3 .... directory

-i (复制到其他地方,有重复时,覆盖时交互提示)
-r (复制文件夹,直接cp报错,对文件夹递归复制)
-a 相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
复制多个文件到文件夹 (如(cp a b …/)把a,b文件复制到了上一级文件中
5.mv命令 移动(剪切,粘贴的功能)

 [root@www ~]# mv [-fiu] source destination
[root@www ~]# mv [options] source1 source2 source3 .... directory

移动多个文件 mv a b test.c 把a,b移动到test.c中
更改文件名 如(mv test 2.c test secend.c)
6.touch命令 创建文件或更新时间
7.rm 命令

 rm [-fir] 文件或目录

删除文件
rm -i (删除普通文件)互动模式,在删除前会询问使用者是否动作;
rm -r (删除文件夹)
8.mkdir命令 创建目录

mkdir [-mp] 目录名称

  mkdir d1(创建了d1)
  mkdir d1/d11(在原有的d1里创建d11)
-p (级联创建,创建一个递归文件夹,mkdir -p d1/d11)
9.rmdir(删除空的目录)
语法:

rmdir [-p] 目录名称

选项与参数:
-p 连同上一级『空的』目录也一起删除
注意:这个rmdir仅能删除空的目录,你可以使用rm命令来删除非空目录。

三、文件内容查看

linux系统中使用以下命令查看文件内容:
1. Cat命令:(查看文件内容,把文件内容打印到终端)
-s 多个空行合并成一个空行显示
-b 加一行空行显示
2. nl 加行号
3. head命令
-n(n只是一个未知数) 显示文件前n行(前n行,默认10)
4. Tail 命令 -n 显示文件后n行(后n行,默认10)
5. tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
6. more 一页一页的显示文件内容
less 与 more 类似,但是比 more 更好的是,他可以往前翻页!

四、vi/vim基本操作

格式:

vi 文件路径加文件名

示例:

vi /etc/network/interfaces

1.vi test1

如果有test1文件则打开文件,如果没有则创建新文件;

2.vi的三种模式

命令行模式 用户在用vi编辑文件时,最初进入的为该模式。可以进行复制、粘贴等操作。
插入模式 进行文件编辑,按ESC键可以回到命令行模式。
底行模式 光标位于屏幕的底行。可以进行文件的保存、退出、查找、替换、列出行号等
在这里插入图片描述

3.vi模式切换命令

(A行尾转插入,I行首转插入)
在这里插入图片描述
**底行模式<=>命令行模式**之间的转换:不需要特别命令;只需直接键入相应命令键即可;

4.vi拷贝与粘贴命令

(在命令行模式下操作)(N表示对当前的多少行进行操作)
在这里插入图片描述

5.vi保存和退出命令(底层模式下)

在这里插入图片描述

6.vi光标命令(命令行模式下)

在这里插入图片描述

7.vi的查找命令

/ 要查找字符串 (如/printf 光标停在了初始光标下第一个printf下)
n 继续查找
N 反向继续查找
支持正则表达式比如:/^the    /end$
(找以他为开头的这些行,或以他为结尾的这些行)

8.vi替换命令 (底层模式下利用:s 命令可以实现字符串的替换)

模板 :范围(x,y) s/old/new 如果省去范围不写,默认是当前行)
:s/str1/str2/
:s/str1/str2/g (g该行全部替换(没g默认换第1个)
:.,$ s/str1/str2/g ( .,$ 范围是当前行到最后一行)
:1,$ s/str1/str2/g ( 1,$ 范围是第一行行到最后一行)(全文替换)
:%s/str1/str2/g ( %s 全文替换)

9.vi复制和剪切命令

d0 将光标至行首的字符剪切入剪贴板
d% 将光标至行尾的字符剪切入剪贴板
y0 将光标至行首的字符拷入(复制)剪贴板
y$ 将光标至行尾的字符拷入剪贴板
range d 块剪切 (如:**8,16d指的是剪切第8-16行)
range y 块复制 (如:
8,16y**指的是复制第8-16行)

更多详细内容可访问以下链接:

https://mp.weixin.qq.com/s?src=3&timestamp=1595461025&ver=1&signature=Hvqk1Q8w8vjP80UYc8XRVrTu6sHiZuuvYTaxo5nEGoS8CU89q8fZObVVGzWjz6AxzMoDw40rAByvzUsiL-qXbF*PFkCd1mJePmYG-eyJgs0Snb*nFebl6IXzbIWN6TO*A*a9Bq4AFO79LvFV34k1kdUFDUiOvzGBHQ9V999ho3k=

http://c.biancheng.net/vi/

https://zhinan.sogou.com/guide/detail/?id=316513836391
https://www.runoob.com/linux/linux-vim.html

五、网络配置与测试命令

1.ifconfig命令

Linux ifconfig命令用于显示或设置网络设备。ifconfig可设置网络设备的状态,或是显示目前的设置。
示例:
(1)配置ip地址
在这里插入图片描述
(2)显示网络设备信息
在这里插入图片描述
(3)启动关闭指定网卡
在这里插入图片描述

2.ip命令

  Linux ip 命令与 ifconfig 命令类似,但比 ifconfig 命令更加强大,主要功能是用于显示或设置网络设备。ip 命令是 Linux 加强版的网络配置工具,用于代替 ifconfig 命令。
示例:
在这里插入图片描述

六、管道命令

1.管道介绍

管道命令能够将一个命令的执行结果经过筛选,只保留我们需要的信息。 如,/etc目录下会有大量的文件,如果使用ls很难找到需要的文件,因此可以使用管道命令将ls的结果进行一次筛选,只保留需要的信息。
在这里插入图片描述

2.管道命令

command1 | command2 | command3

3.管道工作原理

在这里插入图片描述
  连续使用管道意味着 第一个命令的输出(第一个命令执行之后输出的结果)会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。
  它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,对于 standard error 信息没有直接处理能力。

4.常用管道命令

(1)选取指定列:cut
  cut为剪切的意思,它能将一行行的数据按照指定的分隔符切成一列列,然后只显示特定列的数据。注意该指令处理的讯息是以行为单位的。
cut有两种使用方==:
按照指定字符分隔
这个命令会按照特定的分隔符将数据切分,并只显示第n列的数据。
语法:cut -d ‘分隔字符’-f n
Cat test1.c| cut-d “” -f n,m,z

在这里插入图片描述
选择特定范围内的数据
语法:cut -c 字符区间
在这里插入图片描述
选项与参数:
-d :后面接分隔字符。与-f一起使用;
-f :依据-d的分隔字符将一段讯息分区成为数段,用-f取出第几段的意思;
-c :以字符(characters)的单位取出固定字符区间。
示例:
在/test文件夹下创建test文件,并在其中写入123:456:789:abc:def:ghi,在此基础上进行cut指令的操作。
在这里插入图片描述

(2)关键词搜索指定行:grep
  grep用于进行关键词查找,它会将文件中含有关键词的那一整行输出来。
  grep有两种使用方式
grep [-参数] ‘关键词’ 文件名
这种方式并没有用到管道,只是从指定文件中将符合关键词的行搜索出来。
命令|grep [-参数] ‘关键词’
这种方式采用管道,将前一个命令的执行结果输出给grep,并通过grep的关键词搜索将符合条件的行搜索出来。

选项与参数:
sort [-参数] 文件
-t:指定分隔符
-k:选取分隔后的第几个字段进行排序
-f:排序时忽略选取字段的大小写
-b:去除选取字段前的空格
-M:将选取的字段按照月份来排序(前提是选取字段就是月份)
-n:将选取字段按照数据来排序(前提是选取字段就是数字)
-r:反向排序
-u:去重。若选取字段有重复,则去掉重复。
在这里插入图片描述
示例:
在test文件中第一行写入num:123456789,第二行写入let:abcdefg。在此基础上进行grep指令的操作。
在这里插入图片描述

(3)特定字段提取awk
  awk命令是linux系统中一个非常复杂,功能强大的命令,甚至支持在命令中嵌套流程控制语句,以至于在市面上有专门讲awk命令的书籍,当前来说,掌握它的基本的字符提取功能就ok了,其他知识等之后再 边查阅资料边应用 足矣。
语法:awk ‘条件类型1{动作1} 条件类型2{动作2} …’ 文件名
awk命令的执行原理:
  awk虽然是个字段提取命令,但awk是这样处理的:
  awk首先会将文件的**第一行读取出来**,然后在awk中 判断条件,如果条件满足,则会 执行相应的动作,上面的例子由于没有加条件,所以每一行都会执行同第一行一样的动作。这个动作首先执行的动作是,首先将文件名student.txt赋给$0,然后$1是第一个字段,$2是第二个字段……
然后第二行也重复第一行的动作,将相应字段的内容提取到对应字段中
示例:
在这里插入图片描述

(4)字符替换命令sed
  简介:想让**计算机自动替换文本,就不适合使用具有交互功能的vi/vim等编辑器,sed命令就是这样一个再shell编程中自动替换文本的命令。sed命令是一种几乎包括在所有UNIX平台(包括linux)的轻量级流编辑器。 sed主要是用来将数据进行选取、替换、删除、新增的命令
  释义:stream editor 文本编辑器(用来操作纯 ASCII 码的文本)在操作文本的时候是按行进行操作的,所以也叫
行编辑器
  类比:那说到这大家应该明白,我们的 编辑器分为两类:
  一类叫做
全屏编辑**器,我们打开一个编辑器,它会占据整个屏幕,然后提供给我们一个编辑窗口,而后我们就可以在编辑窗口中进行操作了(vim vi)。
   sed是一种在线编辑器(行编辑器),它一次处理一行内容。处理时, 1.把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space)。 为什么叫模式空间呢:因为sed(不是所有的行都处理)可以指定仅仅处理哪些行,所以sed可以像grep一样做模式过滤的,符合模式条件的处理,不符合条件的不予处理。2.接着用sed编辑命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。 接着处理下一行,这样不断重复,直到文件末尾。
   符合模式 (模式空间中的模式 每次读取一行 匹配模式 编辑命令)做编辑****(到底是删除还是显示 还是什么 取决于 sed的编辑命令)
  Sed 主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等;
   定址:可以 通过定址来定位你所希望编辑的行,该地址用数字构成,用逗号分隔的两个行数表示以这两行为起止的行的范围(包括行数表示的那两行)。如1,3表示1,2,3行,美元符号 ($)表示最后一行 。范围可以通过数据,正则表达式或者二者结合的方式确定。
sed命令的格式为:
在这里插入图片描述
示例:
在这里插入图片描述
在这里插入图片描述
(n)更多指令可访问:

https://blog.csdn.net/u010425776/article/details/52191292?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159598595819726869018206%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=159598595819726869018206&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-1-52191292.first_rank_ecpm_v3_pc_rank_v2&utm_term=%E7%AE%A1%E9%81%93%E5%91%BD%E4%BB%A4&spm=1018.2118.3001.4187
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值