一、Linux基础入门
1.Linux基础
1.1用户类型
root 用户
一个特殊的管理用户,也被称为超级用户<br /> root已接近完整的系统控制 , 对系统损害几乎有无限的能力 , <br /> 除非必要,不要登录为 root
普通用户
权限有限,造成损害的能力比较有限1.2设置主机名
临时生效
hostname NAME 复制代码持久生效
hostname set-hostname NAME 复制代码注意:
主机名不支持使用下划线,但支持横线,可以使用字母,横线或数字组合
- 有些软件对主机名有特殊要求
1.3命令提示符
```Centos默认提示符
[root@han ~]#
ubuntu默认提示符
root@ubunt1804:~# 复制代码
- # 管理员
- $ 普通用户
**显示提示符**
[root@han ~]# echo $PS1 [\u@\h \W]\$ 复制代码
**修改提示符**
PS1=”[\e[36m][\u@\h \W]\$[\e[0m]“
实现持久保持 /etc/profile.d/env.sh 复制代码
**<br />**提示符格式说明**
- \e 控制符
- \u 当前用户
- \h 主机名简称
- \H 主机名
- \w 当前工作目录
- \W 当前工作目录基名
- \t 24小时时间格式
- \T 12小时时间格式
- \ ! 命令历史数
- \ # 开机后命令历史数
<a name="RGv5J"></a>
## 1.4执行命令
**执行命令过程**
- **内部命令**
- **外部命令**
<a name="st7kK"></a>
## 1.5命令别名--alias
<a name="43PfA"></a>
## 二、常见命令
<a name="237V2"></a>
## 1.1查看硬件信息
<a name="gTgns"></a>
### 1.11查看cpu
lscpu命令
<a name="Cqm3f"></a>
### 1.12查看内存大小
free命令
<a name="sy3aX"></a>
### 1.13查看硬盘和分区情况
lsblk命令
<a name="d0n4r"></a>
### 1.14查看内核版本
<a name="u7Gpq"></a>
## 1.2日期和时间
Linux的两种时钟<br /> 系统时钟:由Linux内核通过CPU的工作频率进行的 <br /> 硬件时钟:主板<br />相关命令
- date 显示和设置系统时间
date +%s 显示 date -d @1509536033 设置 复制代码
- 时区
/etc/localtime 复制代码
- 显示日历
cal -y 复制代码
<a name="VDKNe"></a>
## 1.3关机和重启
**关机:**
- halt
- poweroff
**重启:**
- reboot
-f 强制,不调用shutdown<br /> -p 切断电源<br />**关机或重启**<br />shutdown
- -r reboot
- -h halt
- -c cancel
TIME 无指定,默认相当+1(Centos7)<br /> ➢ now: 立刻,相当于+0<br /> ➢ +m: 相对时间表示法,几分钟之后;例如+3<br /> ➢ hh:mm: 绝对时间表示,指明具体时间<br /> ➢ `shutdown -r 18:30`<br /> ➢ `shutdown -r +30`
<a name="dBpe3"></a>
## 1.4用户登录信息查看命令
**who**
- 用户登录信息查看命令<br />♦ whoami: 显示当前登录有效用户<br />♦ who: 系统当前所有的登录会话<br />♦ w: 系统当前所有的登录会话及所做的操作
<a name="qM03s"></a>
## 1.5输出信息echo
echo命令可以将后面跟的字符进行输出常用参数
- -E (默认) 不支持\解释功能
- -n 不自动换行
- -e 启用\字符的解释功能
1.显示变量
echo “$VAR_NAME” #用变量值替换,弱引用 echo ‘$VAR_NAME’ #变量不会替换,强引用 ```
三、命令行扩展、被括起来的集合
命令行扩展:$( ) 或 ``
把一个命令的输出打印给另一个命令的参数
root@han ~]# echo “This system’s name is $(hostname) “ This system’s name is han [root@han ~]# echo i am whoami i am whoami
括号扩展:{ }
打印重复字符串的简化形式
echo file{1,3,5} 结果为:file1 file3 file5 rm -f file{1,3,5} echo {1…10} echo {a…z} echo {000…20…2}
四、命令行历史
命令history
常见选项
- -c: 清空命令历史
- -d offset: 删除历史中指定的第offset个命令
- n: 显示最近的n条历史
- -a: 追加本次会话新执行的命令历史列表至历史文件
- -r: 读历史文件附加到历史列表
- -w: 保存历史列表到指定的历史文件
- -n: 读历史文件中未读过的行到历史列表
- -p: 展开历史参数成多行,但不存在历史列表中
- -s: 展开历史参数成一行,附加在历史列表后
