Linux 操作系统常用命令(系统学习)

系统学习 Linux 操作系统

一、鸟哥的私房菜

1. 小Tips

1.1 下载工具: FTP客户端

FileZilla

2. Linux 的规则与安装

  1. 新建系统时的操作都储存在了 /root/anaconda-ks.cfg 文件中. 便于未来重建一个一模一样的系统;
    也可 Google 一下 kickstart 关键词,获得更多帮助.


二、 狂神说Linux

Linux 中一切皆文件

  • 文件:读写执行(查看、创建、删除、移动、复制、编辑)
  • 权限(用户、用户组)
  • 系统(磁盘、进程))
    在这里插入图片描述

1.小Tips


  • 如果文件是可见的,输入前面后,按住Tab则可以自动补全

  • 命令行上下键可以切换历史命令

  • 退出用 q -> quit

  • ctrl + z停止

  • 白色代表文件
    在这里插入图片描述
    在这里插入图片描述

  • 最高权限为root,可以操作一切

  • Linux 里没有输出错误即代表成功
    在这里插入图片描述

  • man + 指令 查看该指令帮助文档 或者 命令 -help
    在这里插入图片描述

2. 常用命令


  1. ctrl + 滚轮: 放大或者缩小字体

  2. cd

  3. cd..

  4. ls 查看当前目录下的东西在这里插入图片描述

  5. ls -ll
    在这里插入图片描述

  6. ls -al 列出所有文件,包括隐藏文件在这里插入图片描述

  7. clear 清屏

  8. reset:重新初始化终端/清屏

  9. tar -zxvf 解压

  10. rm -rf 删除文件

  11. ./stratup.sh 打开文件

    sh: Linux 运行文件
    bat: Windows运行文件

  12. pwd: 显示当前所在的目录路径

  13. touch: 新建一个文件,如 touch index.js 就会在当前目录下新建一个index.js文件。

  14. #:表示注释

  15. exti:退出

  16. history: 查看命令历史

3. 开机关机


  1. sync:
    不管是重启还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中。
  2. shutdown
    在这里插入图片描述
  3. reboot 重启, 相当于 shutdown -r now
  4. halt 关闭系统,等同于shutdown -r nowpoweroff

4. 系统目录结构


  • 一切皆文件
  • 根目录 /,所有的文件都挂载在这个节点下
    ls /: 在这里插入图片描述
    /bin: bin 是 Binary 的缩写,这个目录存放着最经常使用的命令。 eg:ls
    /boot: 这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件及镜像文件。(不要动)
    /dev: dev 是 Decice(设备) 的缩写,存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
    /etc: 这个目录用来存放所有的系统管理所需要的配置文件和子目录。 如 Redis、 Java、Tomcat等的配置文件
    /home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
    /lib: 这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。(不要动)
    /lost + found: 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
    /media: Linux 系统会自动识别一些设备,如U盘、光驱等,当识别后,Linux 会把识别的设备挂载在这个目录下。
    /mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt 上,然后进入该目录就可以查看光驱里的内容了。(我们后面会把一些本地文件挂载在这个目录下)
    /opt: 这是给主机额外安装软件所摆放的目录。
    /proc: 这个目录是一个虚拟的目录,他是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。(不用管)
    /root: 该目录为系统管理员,也称作超级权限者的用户主目录。
    /sbin: s 就是 Super User 的意思,这里存放的是系统管理员使用的系统管理程序。
    /srv: 该目录存放一些服务启动之后需要提交的数据。
    /sys: 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs。
    /tmp: 这个目录是用来存放一些临时文件的。 用完即丢的文件可以放在这个目录下,如安装包!
    /usr: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 Windows 下的 program files 目录。
    /usr/bin: 系统用户使用的应用程序。
    /usr/sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
    /usr/src: 内核源代码默认的放置目录。
    /var: 这个目录存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
    /run: 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删除或清除。
    /www: 存放服务器网站相关的资源,环境,网站的项目。

5. 常用的基本命令


5.1 目录管理


5.1.1 绝对路径、相对路径

在这里插入图片描述
cd: 切换目录命令
./: 当前目录
cd ..: 返回上一级


5.1.2 ls 列出目录

在 Linux 中 ls 可能是最常被使用的!

-a 参数: all, 查看全部的文件, 包括隐藏的文件。
-l 参数: 列出所有的文件,包含文件的属性和权限,没有隐藏文件!

Linux 可以组合使用!


5.1.3 cd 命令 切换目录 & pwd 查看当前所在目录

cd 目录名

  1. Linux 绝对路径都是以/开头的, 可以在任意地方使用
    在这里插入图片描述
  2. 相对路径:对于当前目录该如何寻找../../
    在这里插入图片描述
  3. 查看用户目录
    pwd 显示当前所在目录
    在这里插入图片描述

5.1.4 mkdir 创建目录

-p: parent
在这里插入图片描述


5.1.5 rmdir 移除目录 & rm 移除文件或目录

rmdir仅能删除空的目录,如果下面存在文件,需要先删除文件rm -rf,递归删除多个目录-p参数即可。

“rm -f” 强行删除,忽略不存在的文件,不提示确认。(f为force的意思)
“rm -i” 进行交互式删除,即删除时会提示确认。(i为interactive的意思)
“rm -r” 将参数中列出的全部目录和子目录进行递归删除。(r为recursive的意思)
“rm -v” 详细显示删除操作进行的步骤。(v为verbose的意思)


5.1.6 cp 复制文件或目录

cp 原位置 新位置
在这里插入图片描述

5.1.7 mv 移动文件或目录 / 重命名文件

在这里插入图片描述

5.2 文件属性查看

  1. Linux 中第一个字符
    d -> 目录
    - -> 文件
    l -> 链接文档(link file)–> 相当于 Windows 里的快捷方式

    在这里插入图片描述

  2. 一图看懂文件属性
    在这里插入图片描述

5.3 文件属性修改 chmod (必须要掌握)

在这里插入图片描述在这里插入图片描述

5.4 文件内容查看(经常使用)

Linux 系统中使用以下命令来查看文件内容:

  • cat 由第一行开始显示文件内容 -> 用来读文章,或者读配置文件

  • tac 从最后一行开始显示 -> 可以看出 tac 是 cat 的倒着写
    在这里插入图片描述

  • nl 显示的时候,顺道输出行号 -> 看代码时,希望显示行号!常用
    -

  • more 一页一页的显示文件内容

    1.空格键翻页 2. enter下一行 3. :f查看当前行号

  • less 与 more 类似,但是比 more 更好的是,他可以往前翻页!

    1.空格翻页 2.上下键代表翻动页面
    3.查找字符串:/要查询的字符(向下查询) ?要查询的字符串(向上查询)
    n: 继续搜寻下一个 N: 代表寻找上一个

    在这里插入图片描述

  • head 只看头几行 -> 通过-n 参数来控制显示几行!

  • tail 只看尾巴几行 -> 通过-n 参数来控制显示几行!

网络配置目录: cd /etc/sysconfig/network-scripts --> CentOS7
ifconfig: 查看网络配置 (Windows用 ipconfig)

5.5 Linux 链接的概念(了解即可,拓展)

在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述

6. 账号管理

在这里插入图片描述
在这里插入图片描述

6.1 useradd 命令 添加账户

useradd -选项 用户名
-m: 自动创建这个用户的主目录
-G: 给用户分配组!

[root@dixinkk ~]# useradd -m sun
[root@dixinkk ~]# cd /home
[root@dixinkk home]# ls
admin  sun

理解一下本质:Linux 中一切皆文件,这里的添加用户说白了就是往某一个文件中写入用户的信息了! -> /etc/passwd

[root@dixinkk home]# cat /etc/passwd
...
sun:x:1001:1001::/home/sun:/bin/bash

6.2 userdel 删除用户

在这里插入图片描述

6.3 usermod 修改用户

在这里插入图片描述

6.4 切换用户

root 用户
在这里插入图片描述

  1. 切换用户的命令:su username [username为相应的用户名]
    在这里插入图片描述
  2. 从普通用户切换到 root 用户,还可以使用命令:sudo su
  3. 在终端输入exitlogout 或使用快捷方式ctrl + d,可以退回到原来用户,其实ctrl + d 也是执行的 exit 命令
    在这里插入图片描述4. 在切换用户时,如果想在切换用户后使用新用户的工作环境,可以在suusername之间加-,例如:[su -root]

6.5 更改主机名

在这里插入图片描述

6.6 用户密码的设置

在这里插入图片描述

6.7 锁定账户

在这里插入图片描述
在这里插入图片描述

7. 用户组管理

7.1 groupadd 创建一个用户组

在这里插入图片描述
在这里插入图片描述

7.2 groupdel 删除用户组

在这里插入图片描述

7.3 groupmod -g -n 修改用户组的权限信息和名字

在这里插入图片描述
在这里插入图片描述

拓展:文件的查看

在这里插入图片描述

8. 磁盘管理

8.1 df 列出文件整体的磁盘使用量

在这里插入图片描述

8.2 du 检查磁盘空间使用量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Mac 或者想用 Linux 挂载一些本地磁盘或者文件

挂载:mount
在这里插入图片描述
卸载:umount -f [挂载位置]强制卸载

在这里插入图片描述
在这里插入图片描述

9. 进程管理

9.1 基本概念

  1. 在 Linux 中, 每一个程序都有自己的一个进程,每一个进程都有一个 id 号 -> PID
  2. 每一个进程都有一个父进程
  3. 进程有两种存在方式:前台 、后台运行
  4. 一般服务是后台运行的,基本的程序是前台运行的

9.2 命令

9.2.1 ps -xx | grep 进程名字

ps查看当前系统中正在执行的各种进程的信息(重要)

ps -xx

  • -a 显示终端运行的所有的进程信息(当前的进程 一个)
  • -u 以用户为单位显示开启的进程
  • -x 显示后台运行进程的参数
# ps -aux 查看所有的进程

ps -aux | grep mysql
ps -aux | grep redis
ps -aux | grep java

 == `|` 在 Linux 这个叫做管道符  A|B: 表示执行 A 命令的结果作为输出来操作 B 命令 ==
 == `grep` 查找文件中符合条件的字符串 ==

对于我们来说,这里目前只需要记住一个命令即可 ps -xx|grep 进程名字! 过滤进程信息!

9.2.2 ps -ef: 可以查看到父进程的信息 或者 pstree -pu 进程树

ps -ef | grep mysql

# 看父进程我们一般可以通过目录树结构来查看
# 进程树
pstree-pu
   -p 显示父id
   -u 显示用户组

在这里插入图片描述

9.2.3 kill -9 进程的 id -> 结束进程

杀掉进程 == Windows 结束任务

kill -9 进程的 id -> 表示强制结束该进程
平时写的 Java 代码死循环了 -> 可以选择结束进程 杀进程

Guess you like

Origin blog.csdn.net/weixin_46644403/article/details/121120896