0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux命令使用技巧

马哥Linux运维 来源:51CTO 2024-01-15 10:31 次阅读

操作系统概述

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

Linux 文件系统

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

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

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

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

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

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

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

Linux 命令操作

查看当前目录命令:pwd

打开文件夹命令:cd

打开指定文件夹:cd [目录名称]

打开当前用户的根目录:cd ~

返回上级目录:cd …

返回进入目录:cd -

打开根目录:cd /

浏览目录下的文件列表命令:ls

以列的方式查看当前目录下的文件列表:ls -l

查看当前目录下所有的文件(包括隐藏文件):ls -a

以列表的方式查看当前目录下的所有文件:ls -la

创建文件目录命令:mkdir

新建文件目录:mkdir 文件夹名称

递归新建多级目录:mkdir -p 文件夹名称

例如在用户目录下新建 test 目录,命令这样写:mkdir -p test/test1/test2/test3 递归新建多级目录的写法

删除文件目录命令:rmkdir

删除指定目录:rmkdir 目录名称

递归删除指定目录及中间目录:rmdir -p 目录名称这里没有写错,没有字母 k

删除文件或者目录命令:rm

常用命令:rm -rf [目录或文件] rm -ri [目录或文件]

强制删除文件或目录:rm -rf 目录或者文件

在删除前询问是否确认删除:rm -ri 目录或文件

因为强制删除的后果不太好,一般不建议使用rm -rf进行文件删除

rm 命令中不跟 r 参数,无法删除目录,只能删除文件

复制文件或目录命令:cp

递归复制目录1下的所有的文件和文件夹到目录2:cp -r [目录1][目录2]

执行复制操作时覆盖原有目录前询问用户:cp -ri [目录1][目录2]

移动文件、修改文件名命令:mv

将文件夹1名称更改为文件夹2:mv 文件1 文件2 (给文件更名)

将目录1的文件移动到目录2:mv 目录2 目录2 (将目录1的文件移动到目录2)

创建文件命令:touch

touch 文件名称

查看、编辑文件命令:vi

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

vi 的三种模式如下:

命令模式

当用户使用 vi 命令打开文件后,则进入命令模式,用户可以输入命令来执行各种功能。

26d0b68e-b20d-11ee-8b88-92fbcf53809c.jpg

输入模式

如果用户要对文件做修改,则可以使用下面几种命令,进入输入模式,用户进入输入模式之后,可以任意修改文件,除了 Esc 键外,用户输入的任何字符都会被作为内容写入文件中,用户输入 Esc 可以对文件进行相关操作。

26dbec16-b20d-11ee-8b88-92fbcf53809c.jpg

末行模式

如果用户完成编辑命令,则可以按照 esc + “:” 进入末行模式,用户可以对文件内容继续进行搜索,也可以输入 “:wq!” 进行文件保存并退出,或者输入 “:q!” 强制退出文件编辑。

26e585f0-b20d-11ee-8b88-92fbcf53809c.jpg

查看、编辑文件命令:cat

显示一个小的文件的内容:cat 文件名称

创建并打开一个新的文件:cat > 文件名称

查看文件开头内容命令:head

head [参数] [文件名]

例如,使用 head 命令显示某个文件开始的 n 行数据:head -n 文件名称

26f116ae-b20d-11ee-8b88-92fbcf53809c.jpg

查看文件结尾内容命令:tail

动态加载某个文件的内容(常用于查看日志文件):tail -f 文件名称

展示文件最后几行的数据:tail -n 行数文件名称

Linux 权限管理

用户和用户组

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

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

Linux 权限机制有以下特点:

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

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

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

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

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

用户操作命令

切换用户命令:su

su [用户名]或者su -[用户名]

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

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

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

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

添加新用户命令:useradd

2702202a-b20d-11ee-8b88-92fbcf53809c.jpg

在 Linux 操作系统中添加用户:useradd 用户名

在 Linux 操作系统中添加用户并指定用户 UID:useradd -u 指定的 UID 用户名

修改用户密码命令:passwd例如:修改当前用户名为 sang 的用户密码:passwd sang

在添加用户之后,只有为其设置密码,用户才能登陆

270fd7ce-b20d-11ee-8b88-92fbcf53809c.jpg

删除用户命令:userdel

删除用户:userdel 用户名

删除用户并同时删除其登陆信息:userdel -r 用户名

2719c446-b20d-11ee-8b88-92fbcf53809c.jpg

修改用户信息命令:usermod

语法:usermod [选项] [参数] [用户名]

修改用户登录名:usermod -l 新用户名 旧用户名

修改用户所属分组:usermod -g 新组名称 用户名

27245d48-b20d-11ee-8b88-92fbcf53809c.jpg

添加用户组命令:groupadd

语法:groupadd [选项] [组名称]

修改用户登陆名:groupadd 组名

修改用户所属分组:groupadd -g 组 GID 组名

272fe76c-b20d-11ee-8b88-92fbcf53809c.jpg

权限操作

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 [选项] [参数]

273f6034-b20d-11ee-8b88-92fbcf53809c.jpg

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

权限模式:

权限模式使用 u、g、o 分别代表拥有者、同组用户、其他组用户,使用 + 和一代表赋予和收回权限,使用 r、w、x 代表读、写、执行权限。

例如:将文件01的执行权限给当前用户,写权限赋给用户所在的用户组和其他用户。

chmod -r U+X,G+W F01

例如:将文件 f01 的读、写、执行的权限赋给当前用户,将读、写权限赋给用户所在的用户组和其他用户。

chmod -r u=rwx,g=rw,o=rw f01

数字模式:

为了简化授权步骤,用户也可以采用数字模式进行授权,使用二进制的形式代表 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 的应用中,我们需要对进程进行管理,如查看某个进程是否启动、以及在必要的时刻,杀掉某个线程。

查看进程命令: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 ~]$

杀掉进程命令:kill

当系统中有进程进入死循环,或者需要被关闭时,我们可以使用 kill 命令对其关闭。

kill -9 [PID]PID 为 Linux 操作系统中进程的标识

Linux 其他常用命令大全

清屏命令:clear

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

挂载命令:mnt

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

启动 SSH 服务命令:service sshd start

重启 SSH 服务命令:service sshd restart

关闭 SSH 服务命令:service sshd stop

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 软件包。而无须用户关心软件包的下载地址,以及软件包的依赖关系。

软件安装常用命令

解压压缩命令:tar

语法:tar [选项] [压缩包]

解压 gzip 包:tar -zxvf [包名]

解压 bz 包:tar -jxvf [包名]

解压普通包:tar -xvf [包名]

2750a92a-b20d-11ee-8b88-92fbcf53809c.jpg

安装卸载命令:rpm

语法:rpm [选项] [软件包]

查询是否已经安装了某软件包:rpm -qa|grep [软件包关键词]

卸载已经安装的软件包:rpm -e 软件包全名

安装软件包并查看进度:rpm -ivh 软件包路径

2760f3fc-b20d-11ee-8b88-92fbcf53809c.jpg

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10991

    浏览量

    206742
  • 操作系统
    +关注

    关注

    37

    文章

    6290

    浏览量

    121897
  • 文件系统
    +关注

    关注

    0

    文章

    273

    浏览量

    19681
  • 命令
    +关注

    关注

    5

    文章

    638

    浏览量

    21849

原文标题:可解决 95% 以上问题的Linux命令,能用到退休!

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    后端开发必备Linux命令汇总

    后端开发必备Linux命令汇总
    发表于 11-21 14:05 268次阅读

    介绍一些实用的Linux命令

    作为一名软件开发人员,掌握 Linux 命令是必不可少的技能。即使你使用 Windows 或 macOS,你总会遇到需要使用 Linux 命令的场合。例如,大多数 Docker 镜像都
    发表于 08-01 16:12 189次阅读
    介绍一些实用的<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>

    嵌入式Linux命令总结

    嵌入式Linux命令总结
    发表于 09-19 16:30 280次阅读

    Linux命令和技巧

    Linux命令和技巧 1. mount umount 命令Linux里面想要使用你的软盘和光盘可不是像在Windows里面那么的危险。 想想看如果你在Windows里面安装一个光盘
    发表于 01-18 09:59 603次阅读

    Linux命令大全

    Linux命令大全,虽然不是每个命令都必须记住,有些命令也不常用,作为一本很好的工具书,它可以做的有备无患!
    发表于 10-30 17:16 23次下载

    linux命令大全

    书中收集了丰富的Linux命令,是Linux技术开发者的好工具
    发表于 08-08 18:20 3次下载

    linux命令大全

    linux命令大全,又需要的朋友可以下来看看。
    发表于 12-11 16:57 0次下载

    Linux命令大全完整版

    Linux命令大全完整版
    发表于 12-16 22:33 0次下载

    Linux命令大全

    Linux命令大全
    发表于 10-30 09:49 8次下载
    <b class='flag-5'>Linux</b>的<b class='flag-5'>命令</b>大全

    6个有趣的Linux命令案例讲解

    6个有趣的Linux命令案例讲解
    发表于 08-11 17:49 12次下载

    危险的Linux命令清单

    有人无数次问我这个问题,我一直避免回答,因为没有一个明确的危险的 Linux 命令清单。
    的头像 发表于 09-26 09:16 861次阅读

    Linux 命令大全建议收藏

    本文为 Linux 命令大全,从 A 到 Z 都有总结,建议大家收藏以便查用,或者查漏补缺!
    的头像 发表于 05-12 10:53 594次阅读

    shell命令linux命令一样吗

    Shell命令Linux命令并不完全一样。 首先,Shell是一种命令行解释器,它是用来解释和执行用户输入的命令的。Shell既是一种
    的头像 发表于 11-08 10:51 1388次阅读

    linux命令和shell编程有什么联系

    Linux命令和Shell编程之间存在密切的联系。 首先,Shell是Linux命令行下的解释器,它提供了一个用户界面,使用户能够与Linux
    的头像 发表于 11-08 10:53 415次阅读

    linux命令概述

    电子发烧友网站提供《linux命令概述.pdf》资料免费下载
    发表于 03-11 09:18 3次下载