Linux指令大全,第二篇(超详细版)

目录

[9.1 链接文件的命令](#9.1 链接文件的命令)

[10.1. 用户和权限](#10.1. 用户和权限)

[11.1 文件压缩和解压命令](#11.1 文件压缩和解压命令)

[12.1 文件操作命令补充](#12.1 文件操作命令补充)

[13.1 Vim编辑器的使用](#13.1 Vim编辑器的使用)

[14.1 Linux开关机命令](#14.1 Linux开关机命令)

[15.1 Shell Linux 程序设计(未完持续更新~)](#15.1 Shell Linux 程序设计(未完持续更新~))

[16.1 以上运行效果图如下](#16.1 以上运行效果图如下)


9.1 链接文件的命令

9.1.1 硬链接和符号链接

ln file(源文件) file_1(目标文件) #创建硬链接,注意地方:不允许硬链接指向目录

Ln apache-zookeeper-3.5.9-bin(源文件) zookeeper_1(目标文件) #创建符号链接,既可以对目录、文件也可以在不同文件系统之间建立符号链接

10.1. 用户和权限

10.1.1先说一下,几种常用符号所代表意思,方便理解

u:代表文件或目录的所有者

g:代表同组用户,既与文件属主有相同组ID的所有用户

o:代表其他用户

a:代表所有用户,他是系统默认值

+:添加某个权限

-:取消某个权限

=:赋予给定权限并取消其他所有权限(如果有)

r:可读

w:可写

x:可执行

10.1.2 Chmod命令

chmod a+x test.txt #将所有用户都赋予可执行权限

chmod u=rx,g=x,o= Test.txt #将属主、同组用户、其他用户分别赋予,rx,x,无任何权限

Chmod 0664 Test.txt #第一位表示用户的ID,将属主赋予可读可写,同组用户可读可写,其他用户可读权限

10.1.3 Umask命令

  1. umask 对权限计算的影响:

umask命令设置的权限掩码会影响新创建的文件和目录的默认权限。在创建新文件时,系统会根据umask值从默认权限中减去相应的权限位。例如,如果umask值为0022,新创建的文件将没有其他人的写权限(0022 = ~022 = 644)。

  1. umask 不影响已有文件和目录:

umask命令只会影响新创建的文件和目录,不会对已有文件和目录的权限产生影响。

  1. umask值的默认来源:

在Linux系统中,umask值的默认来源通常是由系统配置文件 `/etc/profile` 或 `/etc/bashrc` 设置的。这些文件定义了系统范围内的默认umask值。用户登录后的shell会继承这个值,除非用户在自己的启动脚本中显式地修改了它。

10.1.4 chgrp命令

Chgrp -R newgroup /home/test_1 #将/home/test_1及其子目录下的所有文件的用户组改为:newgroup

10.1.5 chown命令

Chown -R new_accounter /home/test_1/kiss #将目录/home/test_1/kiss及其下面的所有文件、子目录的文件主改成new_accounter

10.1.6 man命令

Man date #可以查看date命令的用法,按q键可以退出

10.1.7 help命令

Help cd #列出cd命令的帮助信息,cd命令是一个shell内置命令

10.1.8 ps命令

Ps #列出每个与当前shell 有关的进程的基本信息

Ps -ef #显示系统中所有进程的全面信息

Ps aux #显示所有终端上所有用户的有关进程的所有信息

10.1.9 nice命令(用于修改进程的优先级)

Nice -n 15 find . -name *.c -print& #降低find命令的优先级(将nice值加上15),&这个符号意思是让它在后台运行,-print是指在控制台显示出来

10.1.10 kill命令(这个命令在实际工作中经常会用到)

Kill 2903 #杀死PID对应的2903进程,在用ps aux查看一下已经杀死了

Kill -s 9 2904 #强制杀死PID对应的2904进程,当在一个进程陷入死循环时,加上-s 9,特别管用

10.1.11 sleep命令

Sleep 3 ;pwd;who|grep test_1 #3秒后,将执行查找当前路径,然后显示当前用户登录信息给到过滤查找test_1

11.1 文件压缩和解压命令

文件打包:tar -zcvf name.tar file1_name file2_name file3_name #将这几个文件打包一下

文件解包:tar -zxvf name.tar #解压到当前文件里,没有指定解压文件路径时那里

Tar -zxvf name.tar -C /home/test_1/unzip #将压缩包解压到指定文件夹里

12.1 文件操作命令补充

1、mkdir aaa #创建目录

2、rmdir aaa #删除目录

3、touch txt.txt #创建一个文件

rm -rf txt.txt #强制删除txt.txt文件

ll txt.txt #查看txt.txt文件属性

ll -a #查看所有当前目录下文件,包括隐藏文件

find file_name #查找文件

13.1 Vim编辑器的使用

【vi编辑器的3种模式】
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)

第一步:ESC 进入命令行模式
第二步:: 进入底行模式
第三步:wq 保存并退出编辑

取消编辑:

第一步:ESC 进入命令行模式
第二步:: 进入底行模式
第三步:q! 撤销本次修改并退出编辑

13.1.1 辑模式:
在一般模式中可以进行删除、复制、粘贴等的操作,但是却无法编辑文件的内容,只有当到你按下【i, I, o, O, a, A, r, R】等任何一个字母之后才会进入编辑模式。这时候屏幕的左下方会出现【INSERT或 REPLACE】的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下【Esc】即可退出编辑模式。

13.1.2 命令行模式:
输入【 : / ? 】三个中的任何一个,就可以将光标移动到最底下那一行。在这个模式中, 可以提供查找、读取、存盘、替换字符、离开vi、显示行号等的动作则是在此模式中完成的!

13.1.3 打开文件

vim /path/to/somefile

vim +# :打开文件,并定位于第#行
vim +:打开文件,定位至最后一行
vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首

一般模式可用的按钮说明
13.1.4 移动光标
【h、j、k、l】,分别控制光标左、下、上、右移一格

翻屏
Ctrl+f: 向下翻一屏
Ctrl+b: 向上翻一屏
Ctrl+d: 向下翻半屏
Ctrl+u: 向上翻半屏

【n<space>】光标向右移动n个字符
【Home】移动到这一行的最前面字符处:0数字,但不能用数字小键盘上的数字
【End】 移动到这一行的最后面字符处:$,我测试好像不行
【w】光标跳到下个字的开头
【e】光标跳到下个字的字尾

【H】 光标移动到这个屏幕的最上方那一行的第一个字符
【M】 光标移动到这个屏幕的中间那一行的第一个字符
【L】光标移动到这个屏幕的最下方那一行的第一个字符

【G】 移动到这个文件的最后一行
【nG】移动到这个文件的第n行(可配合:set nu)
【gg】 移动到这个文件的第一行,相当于1G
【n<Enter>】光标向下移动n行

13.1.5 查找与替换
【/word】 向光标向下寻找一个名称为word的字符串
【?word】 向光标向上寻找一个名称为word的字符串
【n】 代表重复前一个查找的动作
【N】 与n刚好相反,为【反向】进行行前一个查找动作

【:n1,n2s/word1/word2/g】 n1与n2为数字,在第n1与n2行之间查找word1 这个字符串,并将该字符串替换为word2

【:1,s/word1/word2/g】 从第一行到最后一行查找word1字符串,并将该字符串替换为word2 【:1,s/word1/word2/gc】 从第一行到最后一行查找word1字符串,并将该字符串替换为word2 ,且在替换前提示用户确认是否进行替换

13.1.6 删除、复制与粘贴

【x】 为向后删除一个字符 (相当于【del】键)
【X】 为向前删除一个字符(相当于【backspace】键)
【nx】 连续向后删除n个字符

【dd】 删除光标所在行
【dn】 删除光标所在的向下n行
【d1G】 删除光标所在行到第一行的所有数据
【dG】 删除光标所在到最后一行的所有数据

【d$】 删除光标所在处,到该行的最后一个字符
【d0】 删除光标所在处,到该行的最前一个字符

【yy】 复制光标所在的那一行
【nyy】 复制光标所在的向下n列

【y1G】 复制光标所在行到第一行的所有数据
【yG】 复制光标所在行到最后一行的所有数据

【y0】 复制光标所在的那个字符到该行行首的所有数据
【y$】 复制光标所在的那个字符到该行行尾的所有数据

【p】将已复制的数据在光标下一行粘贴上
【P】 则为贴在光标的上一行

【u】 恢复前一个操作
【Ctrl+r】重做上一个操作

【.】 是重复前一个操作

13.1.7 一般模式切换到编辑模式的可用的按钮说明
【i, I】 进入编辑模式:
i 为【从目前光标所在处插入】
I 为【在目前所在行的第一个非空格符处开始插入】

【a, A】 进入编辑模式(Insert mode):
a 为【从目前光标所在的下一个字符处开始插入】
A 为【从光标所在行的最后一个字符处开始插入】

【o, O】 进入编辑模式:
o 为【在目前光标所在的下一行处插入新的一行】
O 为在目前光标所在处的上一行插入新的一行

【r, R】 进入取代模式:
r 只会取代光标所在的那一个字符一次
R会一直取代光标所在的文字,直到按下 ESC 为止;

【Esc】 退出编辑模式,回到一般模式

13.1.8 一般模式切换到命令行模式可用的按钮说明
【:w】 保存编辑的内容
【:w!】强制写入该文件,但跟你对该文件的权限有关
【:q】 离开vi
【:q!】 不想保存修改强制离开
【:wq】 保存后离开
【:x】 保存后离开

【:set nu】 显示行号
【:set nonu】 与 set nu 相反,为取消行

14.1 Linux开关机命令

关机和重启指令不太好演示,这里就不演示了

Shutdown -h now #立即关机

Shutdown -h 10 #10分钟后重启

Shutdown -C #取消关机

Reboot #立即重启

15.1 Shell Linux 程序设计(未完持续更新~)

16.1 以上运行效果图如下

相关推荐
weixin_4426434216 分钟前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
Karoku06634 分钟前
【企业级分布式系统】Zabbix监控系统与部署安装
运维·服务器·数据库·redis·mysql·zabbix
为什么这亚子37 分钟前
九、Go语言快速入门之map
运维·开发语言·后端·算法·云原生·golang·云计算
半桶水专家39 分钟前
用go实现创建WebSocket服务器
服务器·websocket·golang
布值倒区什么name1 小时前
bug日常记录responded with a status of 413 (Request Entity Too Large)
运维·服务器·bug
孤客网络科技工作室1 小时前
VMware 虚拟机使用教程及 Kali Linux 安装指南
linux·虚拟机·kali linux
。puppy2 小时前
HCIP--3实验- 链路聚合,VLAN间通讯,Super VLAN,MSTP,VRRPip配置,OSPF(静态路由,环回,缺省,空接口),NAT
运维·服务器
颇有几分姿色2 小时前
深入理解 Linux 内存管理:free 命令详解
linux·运维·服务器
光芒再现dev2 小时前
已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
运维·python·gpt·语言模型·自然语言处理
AndyFrank2 小时前
mac crontab 不能使用问题简记
linux·运维·macos