【小白学Linux运维】2. Linux 的基本命令操作原创
金蝶云社区-水电费有点贵
水电费有点贵
7人赞赏了该文章 93次浏览 未经作者许可,禁止转载编辑于2024年11月18日 21:15:33
summary-icon摘要由AI智能服务提供

本文介绍了Linux基本命令操作,包括Linux终端介绍、Shell提示符、Bash基本语法、基本命令操作、系统时间管理、帮助命令使用、开关机命令及7个启动级别。此外,还介绍了CentOS与Linux的关联信息,以及通过实战设置服务器通电或定时开机的方法。


Linux 基本命令操作

2.1 Linux 终端介绍 Shell 提示符 Bash Shell 基本语法

2.2 基本命令操作

2.3 系统时间管理

2.4 帮助命令使用

2.5 开关机命令及 7 个启动级别

2.6 实战:设置服务器通电后自动开机

2.7 实战:设置服务器定时开机



centos和linux的关联信息

‌‌CentOS 是Linux系统的一个发行版‌。CentOS(Community Enterprise Operating System)是基于Linux内核的一个发行版,它是在Linux内核的基础上加入了额外的软件包和工具,并进行特定的配置和定制,形成了一个完整的操作系统。CentOS旨在提供稳定性、安全性和可靠性,特别适合企业级服务器环境。

2.1 Linux 终端介绍、Shell 提示符、Bash 基本语法

2.1.1 登录 LINUX 终端

两种终端仿真器:1、GNOME 桌面的 GNOME Terminal ; 2、KDE 桌面的 Konsole Terminal


Linux 系统界面用来执行各种命令的操作窗口,一般叫终端,系统自带的。现在图片中的界面是GNOME 桌面的 GNOME Terminal

这个图形界面(也叫伪终端,Ctrl+Alt+F1)。

还一个是远程连接终端的工具比如: Xshell , CRT 。

通过新建链接,输入服务器的ip地址和账号密码进行连接。


如果一开始进入的是图形图面:tty1 就是图形界面。 tty2-6 是字符界面

图形界面切换到字符界面终端: Ctrl+Alt+F2-6

字符界面切换到另一个字符界面终端: Alt+F3-6

字符界面切换到图像界面 alt+f1 回到图形登录界面

tty 终端用的比较少,它需要在真机上操作 也就是服务器真实物理机上,远程工具无法操作。


例 1:通过 tty 命令看到当前所属的虚拟终端或叫伪终端


pts 指的是伪终端,当打开一个终端时为 pts/0,再次打开一个终端时就为 pts/1,在

图形界面使用的就是伪终端,使用 xshell 远程连接工具也是使用的伪终端。

当我们进入第 3 种级别,多用户级别的字符界面,使用的是/dev/tty 就是控制终端。

[root@xuegod63 ~]# tty

/dev/pts/0

[root@xuegod63 ~]# tty

/dev/pts/0

终端基本样式设置

注:ctrl+shift+T 快速再打开一个终端; shift+ctrl+加号 终端字体放大 ; 终端字体缩小:

ctrl+减号 清屏:ctrl+l

修改虚拟终端显示的颜色为: 白底黑字



编辑--首选项设置终端字体颜色,文本外观,快捷键查看等操作。

改完后,立即生效,没有保存按钮。直接点关闭就可以了。


终端是可以多任务多应用多人一起使用。比如终端有多人一起使用。两个终端之间是可以进行消息发送的。

例 2:不同虚拟终端之间通讯

同时打开两终端,第一个终端执行:

[root@xuegod63 ~]# echo aaa > /dev/pts/1  #重定向吧消息发送到指定位置。

在第二个终端查看:有 aaa 输出


例 3:对所有终端广播消息:系统 10 分钟后关机。

[root@xuegod63 ~]# shutdown +10 #执行此命令后,在其他终端都会收到关机的消息。

Shutdown  #设置时间的命令

centos8 当中本地桌面对广播消息不能很好的接收,xshell 远程登录可以接收到。

[root@xuegod63 ~]# shutdown -c #取消关机



wall  #广播,所有终端都能收到

例如4:wall" The system will be shut down in 10 minutes "


内容解析:

Broadcast message from root@xuegod63-cn (pts/1) (Sun Oct 13 20:49:48 2024)

Broadcast message from  #这个是广播来源

root@xuegod63-cn (pts/1) (Sun Oct 13 20:49:48 2024)  #广播来源于root账号,1号终端,时间Sun Oct 13 20:49:48 2024



识 SHELL

SHELL 通常指的是命令行 shell,它是一种命令解释器,为用户提供了与操作系统交互的界面。


1、 主要功能

1命令执行 接受用户输入的命令,并将其传递给操作系统执行。例如,在 Linux 系统中,常见的 shell 有 Bash、Zsh 等,当你输入 “ls” 命令时,shell 会将这个命令传递给操作系统,然后操作系统执行该命令并返回目录列表的结果给 shell,shell 再将结果显示给用户。 可以执行各种系统命令,如文件操作(复制、移动、删除等)、进程管理、网络操作等。


2 脚本编程 Shell 脚本是一种使用 shell 命令编写的脚本语言,可以实现自动化任务和复杂的系统管理操作。比如,你可以编写一个 shell 脚本,每天定时备份重要文件,或者在系统启动时自动执行一系列配置命令。 支持变量、条件判断、循环等编程结构,使脚本能够根据不同的情况执行不同的操作。例如,可以使用 “if-then-else” 结构根据某个条件执行不同的命令序列。

2、 常见的 Shell 类型

1  Bash(Bourne Again Shell) 是目前最常用的 shell 之一,广泛应用于各种 Linux 发行版和 macOS。它具有强大的功能和丰富的特性,支持命令历史、命令补全、别名设置等。 语法与 Bourne shell 兼容,同时增加了许多新的功能,如数组、关联数组、作业控制等。


2 Zsh 具有强大的自动补全和提示功能,可以大大提高用户的输入效率。它支持插件扩展,可以根据用户的需求进行定制。 提供了丰富的主题和配色方案,使命令行界面更加美观和个性化。

3  Fish(Friendly Interactive Shell) 以用户友好为设计目标,具有简洁的语法和直观的界面。它提供了智能的自动补全和错误提示,对新手用户比较友好。 支持语法高亮,使命令更加易于阅读和理解。

Shell分:外部命令和内部命令

例如:

type pwd 内部命令

Type  vim 外部命令



总结: 通过 SHELL,我们可以对 LINUX 实现哪些操作或管理:

例如:

对文件的管理(创建、删除、复制、修改)

1、对用户的管理(添加、删除)

2、相关权限的管理(授权用户对相关文件的管理,比如增删改查)

3、对磁盘的管理(分区、raid、lvm)

4、对软件的管理

5、对网络的管理

6、运维shell脚本编辑 等等



2.1.3 shell 提示符“#”号与“$”号的区别

[root@xuegod63 ~]# #表示是 root 用户登录,管理员账号登陆

[root@xuegod63 ~]# su - mk #切换到 mk 普通用户

[mk@xuegod63 ~]$

#表示普通用户登录


上面各位置对应的内容代表的意思如下:

[root @ xuegod63 ~ ]#

用户名---@---主机名---当前所在目录(~表示当前用户的家目录)---(# root/$普通用户)

[user1@xuegod63 ~]$ exit #退出当前 shell


2.1.4 认识 Bash Shell

查看所有 shell 类型


1  Bash(Bourne Again Shell)

命令:  cat /etc/shells


/bin/sh

/bin/bash

/usr/bin/sh

/usr/bin/bash

功能是一样的。

ll/bin/bash  #查看命令长格式输出

/bin/sh -> bash  #链接文件



具体你使用的是哪一个,取决于你的用户配置。

passwd 用户配置信息文件

例:通过查看/etc/passwd 文件的每一行的最后一个字段,确认用户使用的 shell 类型

当前我是root用户直接执行命令查看 cat /etc/passwd

重内容中看root内容信息在第一行那么:

[root@xuegod63 ~]# head /etc/passwd -n 1 #查看 passwd 文件中第一行内容

root0:0:root:/root:/bin/bash


注:(若提示报错问题大概率是2点,第一点检查命令是否字母空格敲错了,2 检查当前所在路径是

否正确。)

提示没有这个文件目录,就是这个head后面没加空格。


2.2 基本命令操作

在 LINUX 中使用一个命令,命令格式如下:

命令 【选项】 【参数】

命令:具体执行的命令,比如 pwd,head

选项:会影响到命令的一些参数

参数:命令作用的对象


2.2.1 基本命令之--ls


作用:查看当前目录下有哪些文件(list)

语法:ls 目录/文件 ,如果什么也不加,那么查看的是当前目录下的内容

常用选项:

命令后面不加任何选项

[root@xuegod63 ~]# ls

-l 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等,长列表

[root@xuegod63 ~]# ls -l

加了h参数的效果。直观的显示文件大小

扩展 第一个字符代表文件类型:

d:目录文件

l:链接文件

b:块设备文件

c:字符设备文件

p:管道文件

-: 表示普通文件

为什么有的目录文件有不同的颜色呢?

linux 系统中不同的颜色代表了不同的文件类型:


颜 色                    代表内容                     举 例

蓝色                        目录                        /etc

黑色                     文件                     /etc/passwd

浅蓝色                     链接                 /etc/grub2.cfg

红色                     压缩包                 boot.tar.gz

绿色                     可执行文件             /bin/bash

黑底黄字                     设备文件                 /dev/sda

绿底黑字            粘滞位权限目录文件                /tmp


参数-a : 列出目录下所有的文件,包括以“.“开头的隐藏文件(linux 下隐藏文件是以 . 开头

的,如果存在 2 个点代表存在着父目录,1 个点表示当前目录)


-d 查看目录(不查看里面的内容)

[root@xuegod63 ~]# ls -ld /root/

dr-xr-x---. 15 root root 4096 11 月 15 21:37 /root/



2.2.3 基本命令之--cd

作用:切换目录(change directory)

语法:cd 目录

例 1:直接输入 cd 回到当前用户的宿主(家)目录

[root@xuegod63 ~]# cd /etc/sysconfig/network-scripts/

[root@xuegod63 network-scripts]# cd #回到当前用户的宿主(家)目录

或:

[root@xuegod63 ~]# cd ~ #回到当前用户的宿主(家)目录

[root@xuegod63 ~]# pwd

/root


[root@xuegod63 ~]# cd .. #表示返回到上级目录位置,也就是父目录

[root@xuegod63 /]# pwd

/

[root@xuegod63 /]# cd . #表示进入到当前目录

[root@xuegod63 /]# cd /etc/sysconfig/network-scripts/

[root@xuegod63 network-scripts]# cd - #表示返回切换前的目录


tab 键补全路径名

Linux 下快捷键

都是用 Ctrl+下面的单词, ^表示 Ctrl

Ctrl+C #终止前台运行的程序 , 如:ping g.cn 后,想停止按下 Ctrl+C

Ctrl+D #退出 等价 exit

Ctrl+L #清屏与执行 clear 命令功能一样

Ctrl+R #搜索历史命令,可以利用好关键词

!$ #引用上一个命令的最后一个参数 ,例如cd  !$  直接就切换目录到/opt下。

有个参数下,直接引用到最后一个参数。

Esc + . #引用上一个命令的最后一个参数

[root@xuegod63 network-scripts]# cat /etc/hosts

[root@xuegod63 network-scripts]# vim !$ #相当于执行: vim /etc/hosts

补全命令使用 tab 键,Tab 只能补全命令和文件的路径和名字



2.3 系统时间管理

在 Linux 中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可

在 BIOS 画面设定的时钟;系统时钟则是指 kernel 中 的时钟;所有 Linux 相关指令与函数都是读取系

统时钟的设定

当 Linux 启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作

2.3.1 两种时间

查看硬件时间:

[root@xuegod63 etc]# hwclock

查看系统时间:

[root@xuegod63 mnt]# date

2.3.2 如何修改时间

date 命令相关参数:

[root@xuegod63 ~]# date --help

-s, --set=STRING 把时间设为字符串所描述的时间

例: [root@xuegod63 ~]# date -s "2019-11-2 22:30"

2019 年 11 月 02 日 星期五 22:30:00 CST

%F 完整日期格式,等价于 %Y-%m-%d

%T 完整时间格式

[root@xuegod63 ~]# date "+%F_%T"

2019-11-02

[root@xuegod83 ~]# hwclock -s #以硬件时间为基准,修改系统时间


2.4 帮助命令使用

遇到命令不知道添加哪个参数,可以使用命令帮助查看相关介绍,常用的查看帮助信息命令有如下几

2.4.1 man 命令

查看手册页或命令描述

[root@xuegod63 ~]# man find

man 命令查看帮助时,支持它支持上翻下翻,搜索(直接输入斜线),退出用 q

2.4.2 使用-h 或--help 查看命令选项

[root@xuegod63 ~]# find -h #不可以执行

[root@xuegod63 ~]# find --help

2.5 开关机命令及 7 个启动级别

常用的几个关机,重启命令

shutdown

init

reboot

poweroff

2.5.1 关机命令之--shutdown

作用:关机,重启,定时关机

语法:shutdown [选项]

参数:

-r => 重新启动计算机

[root@xuegod63 ~]# Shutdown -r

-h => 关机

[root@xuegod63 ~]# Shutdown -h

-h 时间 =>定时关机

[root@xuegod63 ~]# Shutdown -h 时间

例如:

[root@xuegod63 ~]# shutdown -h +10 #10 分钟之后关机

[root@xuegod63 ~]# shutdown -h 23:30 #指定具体的时间点进行关机

[root@xuegod63 ~]#shutdown -r 22:22 #22:22 以后重启

[root@xuegod63 ~]# shutdown -h now #立即关机


2.5.2 7 个启动级别

作用:切换系统运行级别

语法:init 0-6

Linux 7 个启动级别:

0 系统停机模式,系统默认运行级别不能设置为 0,否则不能正常启动,机器关的

1 单用户模式,root 权限,用于系统维护,禁止远程登陆,就像 Windows 下的安全模式登录

2 多用户模式,没有 NFS 网络文件系统(Network File System)和网络支持

3 完整的多用户文本模式,有 NFS 和网络,登陆后进入控制台命令行模式

4 系统未使用,保留一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池

用尽时,可以切换到这个模式来做一些设置

5 图形化模式,登陆后进入图形 GUI 模式,X Window 系

6 重启模式,默认运行级别不能设为 6,否则不能正常启动。运行 init 6 机器就会重启

[root@localhost ~]# init 0 #关机

[root@localhost ~]# init 3 #进入 3 级别字符界面

[root@localhost ~]# init 5 #进入 5 级别图形界面

[root@localhost ~]# init 6 #重启

2.5.3 设置默认的运行级别

centos8 不再使用/etc/inittab 文件进行默认的启动级别配置,而使用比 sysvinit 的运行级更为自

由的 target 替代。

第 3 运行级用 multi-user.target 替代。

第 5 运行级用 graphical.target 替代。

查看当前默认启动级别:

[root@xuegod63 ~]# systemctl get-default

[root@xuegod63 ~]# systemctl isolate multi-user.target #切换级别为字符界面

systemctl set-default multi-user.target #设置默认第三启动级别

[root@xuegod63 ~]# systemctl set-default runlevel3.target #设置默认第三启动级别

[root@xuegod63 ~]# systemctl set-default graphical.target #设置默认第五启动级别

[root@xuegod63 ~]# systemctl set-default runlevel5.target #设置默认第五启动级别

[root@xuegod63 ~]# systemctl isolate graphical.target #切换级别为图形界面

[root@xuegod63 ~]# systemctl isolate runlevel5.target #切换级别为图形界面


图标赞 7
7人点赞
还没有人点赞,快来当第一个点赞的人吧!
图标打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!