用户登录
- root用户:是一个特殊的管理账号,即超级管理员。root用户对系统有完全的控制权限,在工作中如果,没有特殊必要尽量不要使用root。
- 普通用户:权限有限,对系统的损害小。
终端
分类:
- 设备终端
- 物理终端
- 虚拟终端
Ctrl+Alt+F[1-6]
,可输入命令tty
查看是哪一终端 - 图型终端
- 串行终端
- 伪终端,通过ssh远程连接。软件:
Xmanager Power Suite
- 按装后启动Xshell输入命令:`ssh ip地址`进行连接服务器(Linux虚拟机)。
- 快速终止连接`ctrl+d`
- 修改ssh连接慢`echo “UseDNS no” >> /etc/ssh/sshd_config`再输入`systemctl restart sshd`
交互式接口
启动终端以后,在终端设备上附加的一个应用程序称为交互式接口。分为CLI(命令行),GHI(桌面)。
CLI(命令行):powershell、sh、bash(linux与mac默认程序)、zsh、csh、tcsh等
bash
bash是linux系统的用户界面,提供了用户和操作系统之间的交互,它接受用户的输入,让它送给操作系统执行。
内部命令:shell自带的命令。显示所有的内部命令help
外部命令:第三方提供的命令。
区分命令的种类:type 命令
查看当前所有的命令别名alias
自定义别名alias 别名='命令'
,只对当前的终端有效。若要对所有终端有效则需写入配置文件中echo “alias 别名='命令'” >> /etc/bashrc
,再重新加载source /etc/bashrc
;若要对当前的用户有效echo “alias 别名='命令'” >> ~/.bashrc
取消自别名unalias
执行原来的命令/command
或“command”
或‘command’
或路径
查看命令所在的路径 which command
命令的格式
command[options…][args…]
command:本身命令
[]:表示可选的。
<>:表示变化的数据
…:表示列表多选
|:表示或
-abc:表示-a -b -c
{}:表示分组
options:启动或者关闭命令里面的某些功能。
- 长选项:--help –color
- 短选项:-i -l
args:命令的作用体,一般情况下是目录或文件,用户名等等。
注意:
- 短选项是可以合并的。
- 空格隔开。
- ctrl+c结束命令。
- 同一行执行多个命令用
;
分格。 - 多行执行同一命令:结尾+
。
获取命令的帮助信息:获取官方文档、
内部命令:help command
、man command
外部命令:-h
、–-help
、command -h
、command –help
、man command
man man
章节
1 Executable programs or shell commands
# 用户命令
2 System calls (functions provided by the kernel)
# 系统调用
3 Library calls (functions within program libraries)
# 库的调用
4 Special files (usually found in /dev)
# 设备文件与特殊文件
5 File formats and conventions eg /etc/passwd
# 配置文件格式
6 Games
# 游戏
7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
# 杂项
8 System administration commands (usually only for root)
# 管理类的命令
9 Kernel routines [Non standard]
# 内核的API,接口
退出:q
打开章节:man 章节名(1-9)
查看命令在哪一章节whatis command
bash 快捷键
ctrl+l:清屏,相当于clear
ctrl+o:执行当前的命令并在执行后显示当前的命令
ctrl+s:锁屏
ctrl+q:解锁
ctrl+c:终止命令,但有时不一定成功
ctrl+z:挂起命令
crtl+a:光标移到到行首,相当于Home键
crtl+e:光标移到到行尾,相当于End键
ctrl+xx:在开头和当前光标所在位置进行跳转
ctrl+k:删除光标后的文字
ctrl+u:删除光标前的文字
alt+r:删除正行
tab键
- 命令补全
- 外部命令:根据环境变量` echo $PATH`定义的路径从前往后依次查找,自动匹配第一个找查到的内容
- 内部命令
- 如果用户的命令只有唯一 一个匹配,则直接补全,如果有多个匹配,则需要再按tab键将所有的匹配结果展示出来
- 目录补全
- 把用户给定的字符作为文件的开头,如果只有唯一 一个匹配,则直接补全,如果有多个匹配,则需要再按tab键将所有的匹配结果展示出来
查看ip地址ip a
查看终端tty
显示系统当前使用的shellecho $SHELL
查看系统可以使用的shellcat /etc/shells
切换使用的shellchsh -s /bin/shellming
命令提示符:root用户:#
,普通用户:$
引号
[root@localhost ~]# echo "name"
name
[root@localhost ~]# echo "$name"
haha
[root@localhost ~]# echo 'name'
name
[root@localhost ~]# echo '$name'
$name
反引号:tap上方的。执行反引号中的命令
[root@localhost ~]# echo "wo shi `tty`"
wo shi /dev/pts/0
与下方代码相同:
[root@localhost ~]# echo "wo shi $(tty)"
wo shi /dev/pts/0
命令历史记录
- 上下键查看之前执行过的命令
- 历史记录存放文件是~/.bash_history
- 查看文件中的历史记录
history
- 执行上一条命令:
!!
、! -1
、ctrl+p 回车
- 调用上一条命令最后的一个值
esc.
!#
执行历史记录中的第几条命令。#代表数字! string
执行最近一次匹配到的命令。- ctrl+r:用于搜索历史命令,匹配到最近一个。ctrl+g取消搜索。
history #
显示最后#号命令
命令展开
{}
file1 file2 file3
[root@localhost ~]# echo file{1..4}
file1 file2 file3 file4
[root@localhost ~]# echo file{1..4..2}
file1 file3
seq
[root@localhost ~]# seq 1 4
1
2
3
4
[root@localhost ~]# seq 1 2 4
1
3
echo回显
[root@localhost ~]# echo -e "abc
abc"
abc
abc
[root@localhost ~]# echo -e 'a'
查看用户登录信息
[root@localhost ~]# whoami 显示当前登录用户
root
[root@localhost ~]# who am i 显示当前登录用户的详细信息
root pts/0 2020-08-04 17:33 (192.168.18.130)
[root@localhost ~]# w 显示所有的用户的并显示执行的命令
修改命令提示符格式
PS1="[e[1;5;41;33m][u@h w]\$[e[0m]]]"
e
h 主机名简称
w 当前工作目录 24小时时间格式 !命令历史数
u 当前用户名
H 主机名
W 当前工作目录基名T 12小时时间格式
# 开机后历史数
1表示字体加粗, 0表示默认字体。4表示给字体加下划线。5:字体闪烁。7:用亮色突出,
31-37:字体颜色
40-47:表示背景颜色
touch
创建一个空文件
data
[root@localhost ~]# date 显示当前的时间
Tue Aug 4 22:41:29 CST 2020
[root@localhost ~]# date --help 查看帮助
[root@localhost ~]# date 010923102018 修改时间
Tue Jan 9 23:10:00 CST 2018
[root@localhost ~]# ntpdate time.windows.com 同步internet时间
4 Aug 22:48:06 ntpdate[58558]: step time server 52.231.114.183 offset 81041871.716733 sec
[root@localhost ~]# date
Tue Aug 4 22:48:24 CST 2020
Tue
[root@localhost ~]# date +%A
Tuesday
[root@localhost ~]# date +%F
2020-08-04
[root@localhost ~]# date +%H
22
[root@localhost ~]# date +%I 十二小时制
10
+%s(时间戳,1970年1月1号,也为unix元年)、A、I、F、H、I、m、d、M、h、c(十二小时制)、T、y、Y、W等等,可以date --help查看
自定义显示
[root@localhost ~]# date +%Y/%m/%d
2020/08/04
时区
[root@localhost ~]# timedatectl 查看当前设置的时区
Local time: Tue 2020-08-04 22:58:31 CST
Universal time: Tue 2020-08-04 14:58:31 UTC
RTC time: Tue 2020-08-04 14:58:31
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
[root@localhost ~]# timedatectl set-timezone 再按两次tab键显示全部时区
[root@localhost ~]# timedatectl set-timezone Africa/Kigali 更改时区
日历
cal -y 显示一年的日历(公历)
cal # 显示#年的日历,#是是年份,如2019
关机
shutdown 默认一分钟后关机。
shutdown -c 取消关机
shutdown -r 默认一分钟后重启。
shutdown now 立即生效
shutdown +2 两分钟之后关机
shutdown 20:00 关机时间
更多请看 shutdown --help
其他关机命令:poweroff
、halt
、init 0
重启
reboot 重启
reboot -f 强制关机或重启
更多请看 reboot --help
init 6 重启