一、初识shell
1.1 shell概述
-
shell是系统的用户界面 ,提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行
-
实际上shell是一个命令解释器,它解释用户输入的命令并且把用户的意图传达给内核。(可以理解为用户与内核之间的翻译官角色)
-
我们可以使用shell实现对Linux系统单的大部分管理,例如:文件管理 、用户管理、权限管理、磁盘管理、软件管理、网络管理…
-
使用shell的两种方式
- 命令行一条条命令输入,效率较低
- 适合少量的工作
shell script
,shell脚本,效率高- 适合完成复杂,重复性工作
- 命令行一条条命令输入,效率较低
-
查看shell解释器
[root@server1 ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
# 常见的shell解释器
/bin/bash
/bin/csh
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
1.2 shell语法
- 格式:
命令 选项 参数
- 命令:整条shell命令的主体
- 选项:会影响会微调命令的行为,通常以
-
或者--
开头 - 参数:命令作用的对象(长参数、短参数)
- bash提示符:
[\u@\h \W]\$
- bash就是shell解释器的一种
[root@server1 ~]# ls
anaconda-ks.cfg
[root@server1 ~]# ls -a
. .. anaconda-ks.cfg .bash_history .bash_logout .bash_profile .bashrc .cshrc .tcshrc
[root@server1 ~]# ls -a /home
. .. zhangsan
1.3 bash基本特性
1.3.1 自动补全
[root@server1 ~]# yum install -y bash-completion
//按tab键可自动补齐
//两次tab键可显示所有可能的情况
1.3.2 快捷键
1.4 初始化配置
- 安装bash-completion
yum install -y bash-completion
- 安装vim工具
yum install -y vim
hostnamectl set-hostname server1
- 关闭防火墙开机自动启动
systemctl disable firewalld
setenforce 0
- 拍摄快照(后面每次练习崩了都可以直接恢复快照)
1.5 连接到xshell
- 查看IP地址:
ip a
- xshell连接:
ssh root@192.168.180.40
二、Linux常见指令
2.1 su切换用户
- 语法:
su - username
或su username
- 功能:切换用户(
-
同时切换用户家目录,推荐加上) - 示例
[root@server1 ~]# su - zhangsan <--超管切换普通用户不需要密码
[zhangsan@server1 ~]$ su - root <--普通用户切换超管或其他用户需要被切换用户的密码
密码:
上一次登录:日 8月 8 15:53:32 CST 2021从 192.168.226.1pts/0 上
[root@server1 ~]#
#加横杆表示切换用户的同时,切换用户的家目录
2.2 uname获取系统相关信息
- 语法:
uname [选项]
- 功能:获取系统的相关信息
- 示例
[root@server1 ~]# uname -a
Linux server1 3.10.0-957.e