Centos服务器密码要求:

  • 12位及以上
  • 必须包含大写字母、小写字母、数字、特殊字符
  • 3个月或半年更换一次

1.虚拟机

  • vmware
  • virturl box(orcle)
  • 作用:通过软件模拟生成硬件信息
  • 桥接:会跟主机获取同一个网段ip地址
  • net:会进行地址转换

2.linux用户

  • root用户:超级管理员,对系统有完全操作的权限,误操作对系统的损害无限大;尽量不要用root登录
  • 普通用户:对系统的操作权限很小,损害有限,需要用普通用户登录

3.终端

  • 图形终端:/dev/tty7
  • 虚拟终端:(ctrl+alt+f1-f6)/dev/tty#
  • 伪终端:/dev/pts/id
  • 物理终端
  • 设备终端
  • 串行终端
# chvt N 命令切换到前台终端 N,这与按CTRL+ALT+Fn相同。如果它不存在,则创建相应的屏幕。
# 进入/dev/tty2
chvt 2
chvt 1    # 退出
fgconsole # 查看活动虚拟控制台的总数
fgconsole --next-available # 查看下一个未分配的虚拟终端
deallocvt # 移除未使用的虚拟终端
# 查看主机地址
ifconfig
ip a/addr
# 查看终端
tty
  • 交互式接口
  • 启动终端后,在终端设备上会打开一个接口
  • GUI:图形接口
  • 命令行CLI:shell、powershell
  • Shell
  • sh、csh、tcsh
  • ksh、bash(linux、mac上的shell)、zsh
  • 用来在linux系统上的一个接口,用来将用户的输入发送给操作系统执行,并把得到的结果输出出来
# 查看系统支持的shell
cat /etc/shells
# 切换shell
chsh -s /bin/bash
# 查看当前shell
echo $SHELL
# #号表示root用户
# 用户@主机名 当前目录 身份
[root@localhost /]# 
# $号表示普通用户
[henry@localhost /]$

4.修改提示符格式

PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
\e 
\h 主机名简称
\w 当前工作目录 \t 24小时时间格式 \! 命令历史数
\u 当前用户
\H 主机名
\W 当前工作目录基名 \T 12小时时间格式
\# 开机后命令历史数
1表示字体加粗, 0表示默认字体。4表示给字体加上下划线。5表示字体闪烁。7表示用亮色突出显示,来让你的文字更加醒目
31表示字符颜色。
可选颜色:红色、绿色、黄色、蓝色、洋红、青色和白色。他们对应的颜色代码是:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)
40表示字符背景色。可选颜色 40、41、42、43、44、45、46、47

# 查看主机信息
[root@localhost ~]# echo $PS1
[\u@\h \W]\$
# 更改用户
[root@localhost ~]# PS1="\[\e[1;30;35m\][\u@\h \W]\\$\[\e[0m\]"
# 更改用户信息的配置文件,即永久生效
# 向文件中追加信息
echo 'PS1="\[\e[1;30;35m\][\u@\h \W]\\$\[\e[0m\]"'>> /etc/profile.d/ps.sh(自定义名称,后缀必须是.sh)

 

5.Linux基础命令

  1. 内部命令:安装完系统以后自带的命令,通过help来获取内部命令的列表
  2. 外部命令:第三方命令,在某些地方可以直接找到执行文件
type 查看命令的类型
which 查找命令的路径
#alias 别名


alias 直接列出了系统里面所有的别名
alias cdetc='cd /etc' 设置别名
unalias cdetc 取消别名
#让命令一致生效
#对当前用户
[root@localhost ~]#echo "alias cdetc='cd /etc'" >> .bashrc
#对所有的用户都生效
echo "alias cdetc='cd /etc'" >> /etc/bashrc
ls 相当于list

# 修改 ~/.bashrc 文件,当前用户有效
echo 'alias ce='cd /etc' >> ~/.bashrc
# 所有用户生效
echo 'alias ce='cd /etc' >> /etc/bashrc
# 执行本身含义
"ls" 'ls' \ls
# 单双引号的区别
echo "$name" # 打印name变量
echo ${name} # 打印name变量
echo '$name' # 打印name变量名

  • 执行原来本身的命令:'ls'、'\ls'、"ls"
  • 单双引号的区别:双引号:" " 可以直接打印变量的值;单引号: ' ' 引号里面写什么就打印什么

 

6.常用命令

  • 格式
# 选项:启用或禁用某些功能(短选项-a和长选项--all)
# 参数:命令的作用对象,一般为目录、用户等
command [options] [args...]
# 注意
1. 多个选项及参数和命令之间需要空格隔开
2. ctrl + c:取消命令执行
3. 同时执行多个命令,用分号隔开
4. 换行command + \,使用\将命令切换成多行s

6.1 时间相关

  • date
[root@localhost ~]#date
Mon Jul 29 12:18:14 CST 2019
[root@localhost ~]#date +%F
2019-07-29
[root@localhost ~]#date +%H(24小时制)
12
[root@localhost ~]#date +%I(12小时制)
12
[root@localhost ~]#date +%y
19
[root@localhost ~]#date +%m
07
[root@localhost ~]#date +%d
29
[root@localhost ~]#date +%M
22
[root@localhost ~]#date +%S
25
[root@localhost ~]#date +%a  星期
Mon
[root@localhost ~]#date +%A  星期
Monday
[root@localhost ~]#date +%T  打印时间完整格式
12:23:31
[root@localhost ~]#date +%y-%m-%d  自定义格式
19-07-29
[root@localhost ~]#date +%Y-%m-%d
2019-07-29
unix元年
[root@localhost ~]#date +%s 时间戳
1564374331
[root@localhost ~]#date +%W 一年中的多少周
30
  • timedatectl
# 显示时区
timedatectl
# 设置时区
timedatectl set-timezone Asia/Shanghai
timedatectl set-timezone UTC
timedatectl set-time 15:58:30
timedatectl set-time 20151120
timedatectl set-time '16:10:40 2015-11-20'
# 查看所有时区
timedatectl list-timezones
# 将你的硬件时钟设置为本地时区
timedatectl set-local-rtc 1
# 将你的硬件时钟设置为协调世界时(UTC)
timedatectl set-local-rtc 0
  • cal 日历
# 查看日历,一个月
cal
# 查看日历,当前月以及上个月和下个月
cal -3
# 显示一年日历
cal -y
# 显示2018年日历
cal -y 2018

 

6.2 关机、重启

 

 

# 默认一分钟后关机
shutdown # 所有用户都会收到此消息
# 重启,一分钟之后
shutdown -r 
# 取消
shutdown -c
# 指定时间关机
shutdown -r now/hh:mm/+6(6分钟之后)

# 直接重启
reboot
# -p表示切断电源
reboot -p 
# 重启
init 6

# 关机
init 0
# 关机
poweroff

 

6.3 xshell

# 快速退出
ctrl + d