Linux 最常用命令:能解决 95% 以上的问题

news2025/1/19 3:17:22

来源:blog.csdn.net/qq_43647359
/article/details/104792569

  • 操作系统概述

  • Linux 操作系统安装

  • Linux 文件系统

  • Linux 命令操作

  • Linux 权限管理

  • 用户和用户组

  • 用户操作命令

  • 权限操作

  • Linux 进程管理

  • Linux 其他常用命令大全

  • Linux 系统软件安装

  • 常用软件安装

  • 软件安装常用命令

在这里插入图片描述


流量如水,文章就是一个瓶子,标题是瓶口,内容是瓶身。 瓶子装水有多快依赖瓶口大小,瓶子装水有多少依赖瓶身大小。

操作系统概述

操作系统 Operating System 简称 OS,通俗讲就是一款软件,不过和一般的软件不同,操作系统是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他的软件都必须在操作系统的支持下才能运行。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro

  • 视频教程:https://doc.iocoder.cn/video/

Linux 操作系统安装

关于 Linux 的安装看这篇——Linux的安装教程

https://blog.csdn.net/huaijiu123/article/details/82083452

Linux 文件系统

  • /var:包含在正常操作中被改变的文件、假脱机文件、记录文件、加锁文件、临时文件和页格式化文件等。

  • /home:包含用户的文件:参数设置文件、个性化文件、文档、数据、EMALL、缓存数据等,每增加一个用户,系统就会根据其用户名在 home 目录下新建和其他用户同名的文件夹,用于保存其用户配置。

  • /proc:包含虚幻的文件,他们实际上并不存在于磁盘上,也不占用任何空间(用 ls-l 可以显示它们的大小)当查看这些文件时,实际上是在访问存在内存中的信息,这些信息用于访问系统。

  • /bin:包含系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。

  • /etc:为操作系统的配置文件目录(防火墙、启动项)

  • /root:为系统管理员(也叫超级用户或根用户)的 Home 目录。

  • /dev:为设备目录,Linux 下设备被当成文件,这样一来硬件被抽象化、便于读写、网络共享以及需要临时装载到文件系统中,正常情况下,设备会有一个独立的子目录,这些设备的内容会出现在独立的子目录下。

Linux 命令操作

  1. 查看当前目录命令: pwd

  2. 打开文件夹命令: cd
    打开指定文件夹:cd [目录名称]
    打开当前用户的根目录:cd ~
    返回上级目录:cd …
    返回进入目录:cd -
    打开根目录:cd /

  3. 浏览目录下的文件列表命令:ls
    以列的方式查看当前目录下的文件列表:ls -l
    查看当前目录下所有的文件(包括隐藏文件):ls -a
    以列表的方式查看当前目录下的所有文件:ls -la

  4. 创建文件目录命令:mkdir
    新建文件目录:mkdir 文件夹名称
    递归新建多级目录:mkdir -p 文件夹名称
    例如在用户目录下新建 test 目录,命令这样写:
    mkdir -p test/test1/test2/test3 递归新建多级目录的写法

  5. 删除文件目录命令:rmkdir
    删除指定目录:rmkdir 目录名称
    递归删除指定目录及中间目录:rmdir -p 目录名称 这里没有写错,没有字母 k

  6. 删除文件或者目录命令:rm
    常用命令:rm -rf [目录或文件] rm -ri [目录或文件]
    强制删除文件或目录:rm -rf 目录或者文件
    在删除前询问是否确认删除:rm -ri 目录或文件

因为强制删除的后果不太好,一般不建议使用 rm -rf 进行文件删除
rm 命令中不跟 r 参数,无法删除目录,只能删除文件

  1. 复制文件或目录命令:cp
    递归复制目录1下的所有的文件和文件夹到目录2:cp -r [目录1][目录2]
    执行复制操作时覆盖原有目录前询问用户:cp -ri [目录1][目录2]

  2. 移动文件、修改文件名命令:mv
    将文件夹1名称更改为文件夹2:mv 文件1 文件2 (给文件更名)
    将目录1的文件移动到目录2:mv 目录2 目录2 (将目录1的文件移动到目录2)

  3. 创建文件命令:touch
    touch 文件名称

  4. 查看、编辑文件命令:vi
    vi 命令为 UNIX 操作系统或者类 UNIX 操作系统都有具有的功能强大的文件编辑命令,用户输入 vi ++ 文件名,便可以进入 vi 模式进行文件内容的查看和编辑,如果文件已经存在,则直接打开文件,如果文件不存在,则系统将打开一个全新的空文件。
    vi 的三种模式如下:

  • 命令模式
    当用户使用 vi 命令打开文件后,则进入命令模式,用户可以输入命令来执行各种功能。
取值说明
L光标移至屏幕最后一行
space光标右移一个字符
backspace光标左移一个字符
N+光标向上移动 N 行
n+光标移下移 n 行
  • 输入模式
    如果用户要对文件做修改,则可以使用下面几种命令,进入输入模式,用户进入输入模式之后,可以任意修改文件,除了 Esc 键外,用户输入的任何字符都会被作为内容写入文件中,用户输入 Esc 可以对文件进行相关操作。
取值说明
a、i、r、o、A、I、R、O编辑模式
dd删除当前光标
ndd删除 n 行
  • 末行模式
    如果用户完成编辑命令,则可以按照 esc + “:” 进入末行模式,用户可以对文件内容继续进行搜索,也可以输入 “:wq!” 进行文件保存并退出,或者输入 “:q!” 强制退出文件编辑。
取值说明
:wq!保存并退出
:q!强制退出
: s/字符串 1/字符串 2将文件中出现的字符串 1 替换为字符串2
:set nu显示所有行号
  1. 查看、编辑文件命令:cat
    显示一个小的文件的内容:cat 文件名称
    创建并打开一个新的文件:cat > 文件名称

  2. 查看文件开头内容命令:head
    head [参数] [文件名]
    例如,使用 head 命令显示某个文件开始的 n 行数据: head -n 文件名称

取值说明
-n< 行数 > 显示的行数
默认默认显示文件前 10 行数据
  1. 查看文件结尾内容命令:tail
    动态加载某个文件的内容(常用于查看日志文件):tail -f 文件名称
    展示文件最后几行的数据:tail -n 行数文件名称

Linux 权限管理

用户和用户组

  • 用户是指在一个操作系统中,一系列权限的集合体,操作人员通过用户名和口令可以在系统中执行某一些被允许的操作。不同的用户可以具有不同的权限。Linux 操作系统中每个用户都具有唯一标识 UID,当使用命令创建用户时,如果不指定用户的 UID,则系统将自动为其分配 UID。

  • 用户组就是具有相同特征的用户的集合体,在 Linux 系统中,每一个用户都属于至少一个用户组。Linux 操作系统中每个用户分组都具有唯一标识 GID,当使用命令创建用户组时,如果不指定用户组的 GID,则系统将自动为其分配 GID。
    当使用 -u 指定用户 id 时,用户 id 尽量大于500,以免冲突。因为 Linux 操作系统安装后,会默认建立一些用户,所以可能会占用 500 之内的 id 号。
    Linux 权限机制有以下特点:

  1. 系统有一个权限最大的用户,其名称为 root ,root 用户属于 root 用户组。

  2. 系统默认只有 root 权限可以添加和删除用户。

  3. 添加用户之后,如果没有给用户指定用户组,则系统会为用户添加一个同名的用户组,用户属于该组。

  4. root 切换到普通用户无需登录,普通用户切换到 root 用户需要登陆。

  5. root 可以给用户赋予和回收某一个文件的读、写、执行的权限。

用户操作命令

  1. 切换用户命令:su
    su [用户名] 或者 su -[用户名]
    su[用户名]和 su -[用户名]都可以切换用户,前者类似于临时切换用户,当使用该命令进行切换新用户时,用户配置仍然沿用原来的用户配置,如环境变量、系统变量等。而后者进行切换用户时,环境变量、系统设置全部切换成新用户的用户配置。

  2. 查看当前登陆用户命令:whoami

  3. 查看当前用户所属分组命令:groups

  4. 查看当前用户 UID 和 GID 命令:id

  5. 添加新用户命令:useradd

取值说明
-c代表 comment 指定一段注释性描述
-d指定用户主目录
-g指定用户所属的用户组
-G指定用户所属的附加组
-u指定用户的用户好
缺省直接添加用户

在 Linux 操作系统中添加用户:useradd 用户名
在 Linux 操作系统中添加用户并指定用户 UID:useradd -u 指定的 UID 用户名
6. 修改用户密码命令:passwd
例如:修改当前用户名为 sang 的用户密码:passwd sang
在添加用户之后,只有为其设置密码,用户才能登陆

取值说明
-d删除密码。仅有系统管理员才能使用
-f强制执行
-k设置只有密码过期后才能更新
-l锁着密码
-s列出面膜的相关信息,仅有系统管理员才能使用
-u解开已上锁的账号
  1. 删除用户命令:userdel
    删除用户:userdel 用户名
    删除用户并同时删除其登陆信息:userdel -r 用户名
取值说明
-r删除用户以及其登陆日志等信息
-f强制删除用户,即使用户已经登陆
缺省直接删除用户
  1. 修改用户信息命令:usermod
    语法:usermod [选项] [参数] [用户名]
    修改用户登录名:usermod -l 新用户名 旧用户名
    修改用户所属分组:usermod -g 新组名称 用户名
取值说明
-c修改用户账号的备注文字
-d修改用户登陆时的目录
-e修改账号的有效期
-f修改密码过期后多少天关闭账号
-g修改用户所属的群组
-G修改用户所属附加组
-l修改用户账号名称
-L锁定用户密码,使密码无效
-u修改用户 id
-U解除密码锁定
  1. 添加用户组命令:groupadd
    语法:groupadd [选项] [组名称]
    修改用户登陆名:groupadd 组名
    修改用户所属分组:groupadd -g 组 GID 组名
取值说明
-g指定工作组的 id
-r创建系统工作组
-o允许添加组 ID 不唯一的工作组
缺省添加用户分组

权限操作

  • Linux 操作系统为文件定义了读、写、执行三种权限,不同的用户或者用户组可以具有不同的权限,系统采用 “r”、“w”、“x” 来分别表示文件的读、写、执行权限。使用 ls -l 命令可以查看到用户在当前目录或者文件的操作权限。
    举列:drwxr -xr -x. 2 root root 4096 Sep 23 2011 bin
    从左至右分别表示如下含义:

  • d:代表 bin 数目目录而不是文件

  • rwx:代表拥有者具有读、写、执行的权限

  • r -x:代表同组用户具有读、执行的权限,但是没有写权限

  • r -x:代表其他组用户具有读、执行权限,没有写权限

常用的变更权限命令为:chmod
语法:chmod [选项] [参数]

取值说明
-c显示指令执行过程,但只返回更改的部分
-f不显示错误信息
-r递归授权
-v显示指令执行过程

chmod 的参数可以分为两种,分别是权限模式和数字模式。

  1. 权限模式:权限模式使用 u、g、o 分别代表拥有者、同组用户、其他组用户,使用 + 和一代表赋予和收回权限,使用 r、w、x 代表读、写、执行权限。
    例如:将文件01的执行权限给当前用户,写权限赋给用户所在的用户组和其他用户。
    chmod -r U+X,G+W F01
    例如:将文件 f01 的读、写、执行的权限赋给当前用户,将读、写权限赋给用户所在的用户组和其他用户。
    chmod -r u=rwx,g=rw,o=rw f01

  2. 数字模式:为了简化授权步骤,用户也可以采用数字模式进行授权,使用二进制的形式代表 r、w、x 三种权限,如 101 (5) =r -x,111 (7) =rwx,100 (3) =r- -
    例如:将文件 f01 的读、写、执行的权限赋给当前用户,将读和执行权限赋给用户组、将写和执行权限赋给其他用户。
    chmod 753 -r f01
    例如:将文件 f01 的读、写、执行权限赋给所有用户。
    chmod 777 -r f01

Linux 进程管理

在 Linux 的应用中,我们需要对进程进行管理,如查看某个进程是否启动、以及在必要的时刻,杀掉某个线程。

  1. 查看进程命令:ps
    ps 命令是 Linux 操作系统中查看进程的命令,通过 ps 命令我们可以查看 Linux 操作系统中正在运行的过程,并可以获得进程的 PID(进程的唯一标识),通过 PID 可以对进程进行相应的管理。

ps -ef | grep [进程关键字]

  • 根据进程关键词查看进程命令显示如下,显示的进程列表中第一列表示开启进程的用户,第二列表示进程唯一标识 PID,第三列表示父进程 PPID,第四列表示 CPU 占用资源比列,最后一列表示进程所执行程序的具体位置。
[shang@localhost ~]$ ps -ef|grep sshd
root 1829 1  0 May24 ?   00:00:00 /usr/sbin/sshd
shang 24166 24100  0   20:17 pts/2  00:00:00      grep  sshd
[shang@localhost ~]$
  1. 杀掉进程命令:kill
    当系统中有进程进入死循环,或者需要被关闭时,我们可以使用 kill 命令对其关闭。
    kill -9 [PID] PID 为 Linux 操作系统中进程的标识

Linux 其他常用命令大全

  1. 清屏命令:clear

  2. 查询命令详细参数命令:man

  3. 挂载命令:mnt

  4. 远程连接服务 SSH 相关命令:

  • 启动 SSH 服务命令:service sshd start

  • 重启 SSH 服务命令:service sshd restart

  • 关闭 SSH 服务命令:service sshd stop

  1. Linux 大多数情况下都是远程服务器,开发者通过远程工具连接 Linux ,启动了某个项目的 JAR,一旦窗口关闭,JAR 也就停止运行了,因此一般通过如下命令启动 JAR:nohup java -jar jar-0.0.1-SNAPSHOT.jar &
    这里多了 nohup ,表示当前窗口关闭时服务不挂起,继续在后台运行

Linux 系统软件安装

常用软件安装

Linux 下常用的软件安装方式有3种。

  • tar 安装:如果开发商提供的是 tar、tar.gz、tar.bz 格式的包(其中 tar 格式的为打包后没有压缩的包,gz 结尾的是按照 gzip 打包并压缩的软件包,tar.bz 是按照二进制方式打包并压缩的软件包),可以采用 tar 包安装,tar 安装方式本质上是解压软件开发商提供的软件包,之后在通过相应配置,完成软件的安装。

  • rpm 安装:rpm 安装方式是 redhat Linux 系列推出的一个软件包管理器,类似于 Windows 下的 exe 安装程序,可以直接使用 rpm 命令安装。

  • yum 安装:yum 安装本质上依然是 rpm 包安装,和 rpm 安装方式的不同之处是用户可以通过 yum 参数,指定安装的软件包,系统将自动从互联网上下载相应的 rpm 软件包。而无须用户关心软件包的下载地址,以及软件包的依赖关系。

软件安装常用命令

  1. 解压压缩命令:tar
    语法:tar [选项] [压缩包]
    解压 gzip 包:tar -zxvf [包名]
    解压 bz 包:tar -jxvf [包名]
    解压普通包:tar -xvf [包名]
取值说明
-c指定特定目录压缩
-x从备份文件中还原文件
-t列出备份文件的内容
-r添加文件到已经压缩的文件
-z有 gzip 属性的(后缀是 gz 的)
-j有 bz2 属性的(后缀是 bz 的)
-Z有 cpmpress 属性的
-v显示所有进程
-O将文件解压到标准输出
-f使用档案名称
  1. 安装卸载命令:rpm
    语法:rpm [选项] [软件包]
    查询是否已经安装了某软件包:rpm -qa|grep [软件包关键词]
    卸载已经安装的软件包:rpm -e 软件包全名
    安装软件包并查看进度:rpm -ivh 软件包路径
取值说明
-ivh安装显示安装进度
-Uvh升级软件包
-qpl列出 rpm 软件包内的文件信息
-qpi列出 rpm 软件包的描述信息
-qf查找指定文件属于哪个 rpm 软件包
-Va校验所有的 rpm 软件包,查找丢失的文件
-e删除包
-qa查找已经安装的 rpm 包

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/943809.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

***一种改版后检查硬件PCB生产资料的方法***,简单实用,且不容易出错

一、前言 硬件电路设计改版是常有的事,不管小的实物,还是需求变更经常会遇到要增加或者减少器件,修改走线这些。在第一版已经做了生产资料投板的情况下,可以和第一板对比一下就知道改了哪些地方,怎么才能快速的定位出来改动点并检查是否更改呢。 有的人是通过PCB文件来检…

老Python程序员职业生涯感悟—写给正在迷茫的你

我来讲几个极其重要&#xff0c;但是大多数Python小白都在一直犯的思维错误吧&#xff01;如果你能早点了解清楚这些&#xff0c;会改变你的一生的。所以这一期专门总结了大家问的最多的&#xff0c;关于学习Python相关的问题来给大家聊。希望能带给大家不一样的参考。或者能提…

Java底层起步

Java底层起步 Java介绍 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HQ6tQLFm-1693272724323)(./Java介绍.png)] 什么是面向对象&#xff1f; 例如&#xff1a;小戴正在做饭时&#xff0c;发现没酱油了&#xff0c;对着外面的朋友小张说&#…

使用亥姆霍兹线圈的注意事项

亥姆霍兹线圈由一对完全相同的圆形导体线圈组成。采用直角坐标系&#xff0c;两个半径为R的圆形线圈的中心轴与z轴同轴。两个圆形线圈的z坐标分别为和。每个导体线圈都有相同的电流I。 设置可以减少两个线圈中心O(即原点)的磁场不均匀性。这种动作促使&#xff0c;也意味着非零…

ssm+vue校园活动管理平台源码和论文

ssmvue校园活动管理平台源码和论文090 开发工具&#xff1a;idea 数据库mysql5.7 数据库链接工具&#xff1a;navcat,小海豚等 技术&#xff1a;ssm 摘 要 使用旧方法对校园活动信息进行系统化管理已经不再让人们信赖了&#xff0c;把现在的网络信息技术运用在校园活动信…

使用Python进行可视化呈现

热搜榜是一个反映社会热点话题的实时排行榜。通过监控、分析和可视化 热搜数据&#xff0c;我们可以了解当前的热点事件、舆论走向以及用户关注度。本文将介绍如何使用Python进行 热搜排名监控、分析与可视化呈现。 一、环境准备 首先&#xff0c;确保您已经安装了Python环境。…

Vue3 Element-plus Upload 上传图片

技术栈&#xff1a;Vue3 Ts Element-plus 官网地址&#xff1a;Upload 上传 | Element Plus 一、背景&#xff1a; 表单上传图片功能 二、效果&#xff1a; 三、流程&#xff1a; ①点击上传图片按钮&#xff0c;系统弹出文件选择对话框&#xff0c;选择图片并确认 ②调…

vscode编译C语言

首先把c文件拖到vscode中 然后安装这个插件 安装完毕后会提示你代码中的语法错误&#xff0c;并在编译器的右上角出现编译按钮 我当前的问题是没有GCC&#xff0c;我们点一下编译的按钮也可以看出来这个问题 在 django笔记中 附录二 windows上直接安装uwsgi(不可行) 附录二 win…

c刷题(三)

程序运行结果 int a, b, c; a 5; c a; b c, c, a, a; b a c; printf("a %d b %d c %d\n", a, b, c); line3&#xff1a;c6&#xff0c;a6&#xff1b; line4&#xff1a;(逗号表达式&#xff0c;从左向右计算&#xff0c;结果为最后一个表达式)c8&#xff…

前端:html实现页面切换、顶部标签栏,类似于浏览器的顶部标签栏(完整版)

效果 代码 <!DOCTYPE html> <html><head><style>/* 左侧超链接列表 */.link {display: block;padding: 8px;background-color: #f2f2f2;cursor: pointer;}/* 顶部标签栏 */#tabsContainer {width:98%;display: flex;align-items: center;overflow-x: …

深度学习——感受野

在CNN中&#xff0c;决定某一层输出结果中一个元素所对应的输入层的区域大小被称作感受野&#xff08;receptive field&#xff09;&#xff0c;指的是神经网络中一个神经元可以感知到的区域&#xff0c;在CNN中&#xff0c;即 上某个元素的计算受输入图像上影响的区域&#xf…

Android DataBinding 基础入门

DataBinding 是谷歌官方发布的一个框架&#xff0c;顾名思义即为数据绑定&#xff0c;是 MVVM 模式在 Android 上的一种实现&#xff0c;用于降低布局和逻辑的耦合性&#xff0c;使代码逻辑更加清晰。MVVM 相对于 MVP&#xff0c;其实就是将 Presenter 层替换成了 ViewModel 层…

github加速的方法

一、UU加速器 1、下载软件 网易UU加速器——不止快&#xff0c;还很稳 (163.com) 2、搜索学术两个字&#xff0c;点击启动游戏 二、Steam加速器 1、下载软件 Watt Toolkit - 瓦特工具箱(Steam官网) (steampp.net) 2、选择按钮之后&#xff0c;点击一键启动

聚焦磷酸铁锂产线革新,宏工科技一站式解决方案

兼顾了低成本与安全性两大属性&#xff0c;磷酸铁锂市场在全球范围内持续升温&#xff0c;并有望保持较高的景气度。巨大的需求空间之下&#xff0c;行业对于锂电装备企业的自动化与智能化水平、整线交付能力、产品效率与稳定性等均提出了新的要求。 以宏工科技股份有限公司&a…

【IOTE】物联网射频模组和芯片级方案提供商——深圳信驰达科技将精彩亮相IOTE物联网展

►►►强势来袭 Strong Attack 主物联场&#xff0c;相约深圳&#xff1b;2023&#xff0c;共论商机&#xff01;IOTE2023第二十届国际物联网展深圳站将于2023年9月20-22日在深圳国际会展中心(宝安新馆)开展&#xff01;汇聚全球超800家参展企业&#xff0c;呈现更多数字化纷呈…

恒运资本:两市迎普涨,创业板指涨超3%,汽车配件等板块走强

29日早盘&#xff0c;A股两市低开高走&#xff0c;沪指涨幅超1%&#xff0c;创业板指涨超3%。截至午间收盘&#xff0c;沪指涨1.39%报3141.82点&#xff0c;深成指涨2.41%&#xff0c;创业板指涨3.47%%&#xff0c;两市算计成交6265亿元。北向资金净流入超38亿元。盘面上&#…

基于面向对象的空间自相关指数,即插即用!Moran‘s I,局部莫兰指数,Geary‘s C指数,附完整可行使用案例

Geary’s C Geary’s C&#xff08;也称为Geary’s coefficient&#xff09;是一种用于衡量空间自相关性的统计指标&#xff0c;它可以用来评估地理数据中的空间聚集或离散程度。Geary’s指数的计算公式如下&#xff1a; G ( n − 1 ) ∗ ( Σ Σ w i j ∗ ( x i − x j ) 2…

windows下Node版本的切换方式

为了避免应用构建出错&#xff0c;我们在本地开发环境的 Node 版本与在 CI/CD 流程中指定的 Node 版本需保持一致。在这种需要频繁切换 Node 版本的情况下&#xff0c;我们不可能手动卸载又安装不同的版本&#xff0c;这时我们可以借助 NVM 工具来帮助我们快速地切换 Node 版本…

轻量、便捷、高效—经纬恒润AETP助力车载以太网测试

随着自动驾驶技术和智能座舱的不断发展&#xff0c;高宽带、高速率的数据通信对主干网提出了稳定、高效的传输要求&#xff0c;CAN(FD)、LIN已无法充分满足汽车的通信需求。车载以太网作为一种快速且扩展性好的网络技术&#xff0c;已经逐步成为了汽车主干网的首选。 此外&…

无涯教程-Android - Services

服务是在后台运行以执行长时间运行的操作而无需与用户交互的组件&#xff0c;并且即使应用程序被破坏&#xff0c;它也可以工作。服务实际上可以采取两种状态- Sr.No.State & Remark1 Started 当应用程序组件(如Activity)通过调用 startService()启动服务&#xff0c;启动后…