写点什么

玩转 Liunx 系统,看这篇文章就够了 (二)

作者:Java学术趴
  • 2022 年 7 月 14 日
  • 本文字数:4366 字

    阅读完需:约 14 分钟

玩转Liunx系统,看这篇文章就够了(二)

👨‍🎓作者:Java 学术趴

🏦仓库:GithubGitee

✏️博客:CSDN掘金InfoQ云+社区

💌公众号:Java 学术趴

🚫特别声明:原创不易,未经授权不得转载或抄袭,如需转载可联系小编授权。

🙏版权声明:文章里的部分文字或者图片来自于互联网以及百度百科,如有侵权请尽快联系小编。微信搜索公众号 Java 学术趴联系小编。

☠️每日毒鸡汤:没撒子可说的,好好看文章吧。

👋大家好!我是你们的老朋友 Java 学术趴。相毕大家对 Windows 玩的已经是非常的熟练,那么小编今天给大家带大家搞一搞 Linux 系统,小编用一个星期的时间给大家整了一些 Linux 干货,由于内容太多,小编分开发。话不多说,直接进入今天的主题:Linux 系统。Linux,全称 GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于 1991 年 10 月 5 日首次发布,它主要受到Minix和 Unix 思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位64位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux 有上百种不同的发行版,如基于社区开发的debianarchlinux,和基于商业开发的Red Hat Enterprise LinuxSUSEOracle Linux等。

8.Linux 用户简介

8.1 Linux 中用户简介

  • Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

  • root 用户是系统默认创建的管理员账号。root 用户可以创建多个普通用户,用于分配给公司的普通员工,之后普通员工使用这个账号来访问公司的服务器。

  • root 账号是 Linux 默认生成的一个超级管理员系统。只要这个 root 管理员给普通账号权限,普通用户也可以创建新的普通用户,但是大多数都使用 root 类创建新的普通账号。

  • Window 系统在使用的时候只要有账号就可以使用,但是 Linux 必须有合法的账号和密码才可以使用。

8.2 添加用户

  • useradd 用户名 : 创建一个新的用户账号。

注意:使用这个命令的账号创建账号时,这个创建账号的账号必须有创建账号的权限(一般是 root 账号来创建新的用户)

在使用这个创建命令的时候 Liunx 帮我们做了几件事:

  1. 创建一个用户。

  2. 在/home 目录下创建这个用户的根目录,目录名称默认与用户名相同。(可以进行修改)

  3. 在 Linux 中任何一个用户都至少属于一个组,新建用户时如果不指定组,则会创建一个组,组名很用户名相同,并且把该用户添加到这个组中。

设置用户名字

  • 语法格式:useradd [选项] 用户名

  • useradd zhangsan:创建一个账号叫 zhangsan,此时会创建账号、创建一个组 zhangsan 并且把 zhangsan 分到此组中、还会在/home 下创建一个目录叫 zhangsan 作为新创建用户的根目录。

  • useradd -d /home/ls lisi:创建一个账号叫 lisi,并且给 lisi 指定的目录在 home 下文件夹是自定义的叫做 ls。

设置密码

语法格式:passwd 用户名:给指定用户设置密码。

  • 注意:在设置密码的时候,如果设置的太简单,会让你重新输入复杂的密码,并且在输入密码的时候是看不到的,是隐藏输入的。

8.3 删除用户

语法格式:userdel[选项] 用户名

  • userdel zhangsan:删除用户 zhangsan,保留 zhangsan 的主目录。

  • userdel –r lisi:删除用户 lisi,并且把 lisi 的主目录也删除(级联删除,经常使用)。

8.4 查看用户

语法格式:id 用户名

  • id zhangsan:查看用户 zhangsan 的信息。主要是查询用户组的信息。

8.5 切换用户

语法格式:su 用户名

  • su zhangsan:切换到 zhangsan 用户。此时不需要提供密码。

  • su root : 切换到 root 用户,此时需要提供密码。

注意:从高权限用户切换到低权限用户时,不需要输密码;否则,需要输密码。

重点:exit 命令可以回到原来的用户,并且切换回 root 不需要密码。

9.Linux 组基本操作

  • Linux 的组类似于角色,系统可以对有共性的多个用户进行统一的管理。每一个用户都至少属于一个组,可以存在多个组中,创建用户时如果不指定组,会默认创建一个跟用户名相同的组,并且把新创建的用户分配到组中,root 用户默认属于 root 组。

9.1 添加组

  • 语法格式:groupadd 组名

groupadd devgroup:创建一个组 devgroup。

9.2 删除组

  • 语法格式:groupdel 组名

groupdel devgroup:删除一个组 devgroup。

9.3 添加用户时指定组(常用)

  • 语法格式:useradd –g 组名 用户名

useradd –g devgroup zhangsan:添加用户 zhangsan,并且指定 zhangsan 属于组 devgroup。

9.4 将用户添加到指定组

  • 语法格式:gpasswd –a 用户名 组名

gpasswd -a zhangsan dev

注意:

  • 可以使用查看用户的命令来查看此时用户所在的组。

  • 将用户添加到指定组并不是将以前组中的用户删除添加到新指定的组,而是将以前组中的对象复制一份添加到指定的组,此时这个用户存在于两个组中。

9.5 将用户从组中移除

  • 语法格式:gpasswd -d 用户名 组名

gpasswd -d zhangsan dev



  • gid 叫做主组,用户不可以移出主组。组叫做附加组,用户可以在附加组中被移除。

10.Linux 中帮助命令

  • 查看所有命令的内置帮助信息:help 命令(可以使用 help)(英文版)

  • 查看 Linux 系统手册上指定的帮助信息:man 命令(不可以使用 man)(中文版)

注意:按 enter 是一行一行的显示帮助信息,按 space 是一页一页的显示帮助信息,按 q 退出帮助。

11. Linux 目录操作命令

11.1 查看目录

查看目录中的子目录以及文件列表

  • 查看当前所在的目录:pwd。这个是从根目录开始。

  • 查看指定目录下所有的子目录或者文件列表: ls [指定目录]

  • 查看当前目录下的子目录或者文件列表: ls

以指定格式显示子目录以及文件列表

  • ls 指定目录:使用默认的展示形式(相当于 Windos 中的平铺形式,并且不会展示出隐藏文件)

  • ls -l 指定目录:以列表形式显示。(相当于 Windows 中的列表)

  • ls -a 指定目录:显示指定目录下的子目录以及文件列表(包括隐藏的文件)

注意:以上的命令可以写成 ls -a(ls -l) 等。查看当前目录下的子目录以及文件列表。

查看你列表参数可以叠加

  • ls -al 指定目录:以列表形式展示出指定目录下的子目录以及文件列表(包括隐藏文件)

11.2 切换目录

  • 语法格式:cd [参数]

  • 功能描述:切换到指定目录

参数信息:

  • 绝对目录:路径从根路径(/)开始。(可以从任意位置一步跳转到指定的文件夹)

  • 相对目录:路径从当前目录开始。(的一步一步的跳转到指定的文件夹)

几个特殊的 cd 命令:

  • cd ~或者 cd : 回到自己的主目录。这个属于绝对目录。 (普通用户在 home 目录之下,root 用户在 root 目录之下)

  • cd .. 返回当前目录的上一级目录。这个属于相对目录。

  • cd . 返回当前目录

11.2 创建目录

创建一级目录

  • 绝对目录:mkdir /opt/testDir/test :在 opt/testDir 目录下创建 test 目录。

  • 相对目录:mkdir test :在该目录下创建 test 目录。

注意:创建目录的时候只有 root 账号才有权限创建。普通用户不可以创建。

创建多级目录

  • 绝对目录:mkdir -p /opt/testDir/test3/tes4 : 在 opt/testDir 目录下先创建 test3,在创建一个 test4。多级创建

  • 相对目录:mkdir -p test3/test4 : 在当前目录下, 先创建 test3,在创建一个 test4。多级创建

11.3 删除目录

rmdir 目录 : 删除一个空目录

语法格式 : rm [选项] : 要删除的文件或目录

rm -r :递归删除整个文件夹

rm -f : 强制删除不提示

12. Linux 文件操作命令

12.1 创建文件

  • vi/vim:可以在指定的目录下创建一个文件。 但是使用这个命令创建文件会默认使用编辑器打开。并且 vi 和 vim 一次只能创建一个文件。

  • touch 文件名列表(文件名之间用空格隔开) : 这个命令一个可以创建一个或者多个文件。

  • touch t1.txt t2.txt:在当前目录下创建多个文件。

12.2 查看某个文件的内容

查看全部的文件内容

语法格式:cat [选项] 要查看的文件名(绝对目录/相对目录)

cat -n 查看的文件名称 :这个会显示出行号。

注意:文件只以只读的文件显示。

查看开头指定行数的文件内容

head 文件名 : 默认查看文件的头 10 行内容。

head -n 5 文件名 : 查看文件头 5 行内容,5 可以是任意的数字。

注意:在 Linux 系统中,所有的文件名都可以使用绝对路径或者相对路径显示。

查看结尾指定行数的文件内容

tail 文件名 : 默认查看文件尾 10 行的内容,

tail -n 5 文件名 : 查看文件尾 5 行内容,5 可以是任意的。

12.3 输出变量或者常量到控制台

echo [选项] [输出内容] :输出变量或者常量内容到控制台

  • echo $PATH(这里需要大写) : 输出路径到控制台,这里的 PATH 需要大写。

  • echo Hello world! :可以在控制台输出 Hello world

把前一个查看命令的结果输出到指定的文件中(如果文件不存在,系统会帮我们自动创建一个。并且创建文件的位置就是输入命令的这个目录) : 查看命令 > 文件名

  • ls > ret.txt

注意:

  • 输入到这个文件中的并不是一个目录,而是这个目录下对应的文件或者子目录的名称。

  • 当这个文件夹存在的时候,再次执行这个命令会覆盖掉这个文件中之前的内容。

文件内容的复制:

  • cat ret.txt > ret_new.txt :将源文件中的内容复制一份到新的文件,并且源文件的内容不发生改变。

注意: 不论是新建还是文件的复制,都会覆盖掉以前文件中的内容。

13.Linux 的系统操作

  • shutdown now : 立刻进入关机

  • shutdown -h 1 : 1 小时后关机

  • shutdown -r now : 现在重启计算机

  • reboot : 现在重启计算机

  • sync : 把内存的数据同步到磁盘。

14. Linux 中关于日期和时间的操作指令

查看或者设置系统的日期或者时间:date

  • date : 查看系统当完整的日期和时间。

  • date +%Y : 系统当前的年份。

  • date +%m : 系统当前的月份。

  • date +5d :系统当前的日期。

  • date '+%Y-%m-%d %H:%M:%S' :按照 yyyy-MM-dd HH:mm:ss 格式显示当前系统的时间。

Linux 系统中查看日历

  • cal :查看系统当前月份的日历。

  • cal 2020 :查看指定年份的所有月份的日历信息。

15. Linux 中关于搜索文件或者目录的命令(find)

语法格式:find [搜索范围] [搜索标准] 关键字

搜索标准:

  • name : 默认按照名称搜索,这个 name 可以省略不写,不写也是按照名字搜索。

  • size : 按照文件大小搜索。

  • user:按文件的所有者搜索。(默认是谁创建的这个文件,谁就是这个文件的所有者。后期可以进行更改)

15.1 通过文件或者目录的名称进行搜索

  • find *.txt (相对路径): 搜索当前目录下。所有的.txt 文件。

  • find * e * (相对路径):搜索当前目录下,所有名称中包含 e 的文件和目录。

  • find /etc */txt :搜索/etc 目录下所有.txt 文件。

15.2 通过文件的大小来搜索

在 Linux 中,+号代表大于,-代表小于。

  • find /etc -size -5k(5M) :搜索/etc 目录下所有小于 5k/5M 的文件。

  • find /etc -size +5k(5M) :搜索/etc 目录下所有大于 5k/5M 的文件。

15.3 通过文件的所有者就行搜索

  • find /etc -user zhangsan : 搜索/etc 目录下所有者是 zhangsan 的文件和目录。

今天就先分享到这里喽,明天接着给大家分享 Linux 系统关于文件的管理方式,喜欢的大佬儿们,关注不迷路呦

以上项目的源代码,点击星球进行免费获取 星球 (Github 地址)如果没有 Github 的小伙伴儿。可以关注本人微信公众号:Java 学术趴,发送 Linux,免费给发给大家项目源码,代码是经过小编亲自测试的,绝对可靠。免费拿去使用。

发布于: 刚刚阅读数: 3
用户头像

Java学术趴

关注

还未添加个人签名 2022.07.02 加入

还未添加个人简介

评论

发布
暂无评论
玩转Liunx系统,看这篇文章就够了(二)_7月月更_Java学术趴_InfoQ写作社区