Linux基础命令

用户登录

1 - root用户
2     - 是一个特殊的管理账号,也可以成为超级管理员
3     - root用户对系统有完全控制的权限
4     - 对系统的损害会无限大
5     - 在工作中,如果没有特殊的必要,尽量不要使用root
6 - 普通用户
7     - 权限有限
8     - 对系统的损害会小

终端

分类

1 - 设备终端
2 - 物理终端
3 - 虚拟终端 ctrl+alt+f[1-6] /dev/tty#
4 - 图形终端 /dev/tty7
5 - 串行终端
6 - 伪终端 通过ssh远程连接的 /dev/pts/#
7 - 查看终端的命令 tty
8 - 查看ip地址的命令 ip addr

交互式接口

启动终端以后,在终端设备上附加的一个应用程序

1 - GUI(桌面)
2 - CLI command line
3     - powershell
4     - sh
5     - bash(linux,mac默认的程序)
6     - zsh
7     - csh
8     - tcsh    

bash

bash是linux系统的用户界面,提供了用户和操作系统之间的交互,它接收用户的输入,让它送给操作系统执行

1 - 目前是linux和mac上默认的shell
2 - centos默认使用
3 - 显示系统当前使用的shell echo $SHELL
4 - 查看系统内可以使用的shell cat /etc/shells 
5 - ctrl +d 快速终止当前的连接
6 - 切换shell chsh -s shell

修改ssh连接慢的步骤

echo "UseDNS no" >> /etc/ssh/sshd_config
systemctl restart sshd

命令提示符

1 管理员是    # 
2 普通用户是    $

显示提示符格式

1 [root@localhost ~]# echo $PS1
2 [\u@\h \W]\$
3 \u 代表当前登录的用户
4 \h 代表当前主机的主机名
5 \W 代表当前的目录
6 0表示默认字体,1表示加粗,4在字体下方加下划线 5 闪烁 7 代表突出显示
7 31-37 字体颜色
8 40-47 表示背景颜色
9 echo 'PS1="\[\e[1;35mm\][\u@\h \W]\\$\[\e[0m\]"' >> /etc/profile.d/ps.sh #永久生效

命令

执行命令: 输入命令回车

内部命令:shell 自带的命令

- help 显示所有的内部命令

外部命令:第三方提供的命令

查看命令的类型: type

```
[root@localhost ~]#type echo
echo is a shell builtin
[root@localhost ~]#type top
top is /usr/bin/top

```

别名

 1 - 查看当前所有的别名 alias
 2 - 自定别名 alias cdetc='cd /etc'
 3 - 取消别名 unalias cdetc
 4 - 设置别名只对当前的终端有效
 5 - 设置所有用户都可以用 /etc/bashrc
 6 - 只对当前用户有效 ~/.bashrc
 7 - 执行本身命令
 8     - \command
 9     - "command"
10     - 'command'
11     - path

命令格式

 1 command [options.....] [args...]
 2 
 3 command 命令本身
 4 
 5 options:启动或者关闭命令里面的某些功能
 6 
 7 - 长选项:--help --color
 8 - 短选项: -i -l
 9 
10 args:命令的作用体,一般情况下是目录或者文件,用户名等等
11 
12 注意:
13 
14 - 短选项是可以合并
15 - 空格隔开
16 - ctrl+c 结束命令的执行
17 - 在同一行执行多个命令用;隔开
18 - 一个命令可以在多行显示用\连接

获取命令的帮助信息

 1 内部命令:
 2     - help command
 3     - man bash
 4 
 5 外部命令:
 6     - command -h
 7     - command --help
 8     - man coomand
 9 
10 
11 - 官方文档
12 ```
13 [root@localhost ~]#python --help
14 usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
15 [] 可选项
16 <> 表示变化的数据
17 ... 表示列表
18 a|b|c 或者
19 -abc 表示-a -b -c
20 {} 表示分组
21 ```

man

 1 ```
 2 1 Executable programs or shell commands #用户命令
 3 2 System calls (functions provided by the kernel) # 系统调用
 4 3 Library calls (functions within program libraries) # 库的调用
 5 4 Special files (usually found in /dev) #设备文件与特殊文件
 6 5 File formats and conventions eg /etc/passwd # 配置文件格式
 7 6 Games #游戏
 8 7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) # 杂项
 9 8 System administration commands (usually only for root) # 管理类的命令
10 9 Kernel routines [Non standard] # 内核的API
11 退出q
12 翻屏 空格
13 翻行 回车
14 man 章节 passwd
15 ```

bash 快捷键

 1 - ctrl+l 清屏 相当于clear
 2 - ctrl+o 执行当前的命令,并显示当前的命令
 3 - ctrl+s 锁屏
 4 - ctrl+q 解锁
 5 - ctrl+c 终止命令
 6 - ctrl+z 挂起命令
 7 - ctrl+a 光标移动到行首,相当于Home
 8 - ctrl+e 光标移动到行位,相当于End
 9 - ctrl+xx 在开头和当前光标所在位置跳转
10 - ctrl+k 删除光标后的文字
11 - ctrl+u 删除光标前的文字
12 - alt+r 删除正行

tab 键

1 - 命令补全
2   - 内部命令
3   - 外部命令:根据环境变量定义的路径,从前往后依次查找,自动匹配第一个查找到的内容
4   - 如果用户给的命令只有唯一一个匹配,则直接补全
5   - 如果有多个匹配,则需要在按tab键将所有匹配到的结果展示出来
6 - 目录补全
7   - 把用户给定的字符作为文件的开头,如果有唯一一个匹配则直接补全
8   - 如果有多个匹配,则需要再次按tab键把所有的匹配到的结果展示出来

引号

 1 ```
 2 [root@localhost ~]#name=kelvin
 3 [root@localhost ~]#echo "$name"
 4 kelvin
 5 [root@localhost ~]#echo '$name'
 6 $name
 7 [root@localhost ~]#echo "wo shi `tty`"
 8 wo shi /dev/pts/2
 9 [root@localhost ~]#tty
10 /dev/pts/2
11 [root@localhost ~]#echo "wo shi $(tty)"
12 wo shi /dev/pts/2
13 ```

命令历史

 1 - 可以使用上下箭头来查找之前执行过的命令
 2 - 存放文件是~/.bash_history
 3 - 执行的命令是history
 4 - 执行上一条命令
 5     - 上箭头
 6     - !!
 7     - !-1
 8 - ctrl+p 回车
 9 - 调用上一条命令的最后一个值 esc .
10 - !# 指定第多少条命令
11 - !-# 指定倒数第#条命令
12 - !string 用来最近一次匹配到的命令(从下往上)
13 - ctrl+r 搜索命令
14 - ctrl+g 取消搜索
15 - \# 显示最后#条命令

命令展开

1 ```
2 touch file{1..20}
3 seq 0 2 10
4 echo file{1..20..2}
5 ```

echo 回显

1 ```
2 echo -e 'dadasda\ndasdasd'
3 echo -e '\a' #播放声音
4 ```

查看用户登录信息

 1 ```
 2 [root@localhost ~]#whoami # 显示当前的登录用户
 3 root
 4 [root@localhost ~]#who am i #显示当前登录用户的详细信息
 5 root pts/2 2019-08-22 15:54 (192.168.21.1)
 6 [root@localhost ~]#w 显示所有的用户并显示执行的命令
 7 16:27:54 up 5:19, 9 users, load average: 0.00, 0.01, 0.05
 8 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
 9 root tty2 11:37 4:48m 0.02s 0.02s -bash
10 wu tty3 11:39 4:48m 0.02s 0.02s -bash
11 root :0 :0 11:30 ?xdm? 1:28 0.36s /usr/libexec/gnome-session-binary --session gnome-classi
12 root pts/0 :0 11:35 4:43m 0.03s 0.03s bash
13 root pts/1 192.168.21.1 12:11 4:03m 0.02s 0.02s -bash
14 root pts/2 192.168.21.1 15:54 2.00s 0.18s 0.03s w
15 wu pts/3 192.168.21.1 12:27 2:26 0.05s 0.05s -bash
16 ```

date

 1 ```
 2 [root@localhost ~]#date 显示当前的时间
 3 Thu Aug 22 16:30:06 CST 2019 
 4 Usage: date [OPTION]... [+FORMAT]
 5 or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
 6 [root@localhost ~]#date 010923102018 #修改时间
 7 Tue Jan 9 23:10:00 CST 2018
 8 [root@localhost ~]#date
 9 Tue Jan 9 23:10:18 CST 2018
10 [root@localhost ~]#ntpdate time.windows.com #同步网络服务器时间
11 unix元年 1970-01-01
12 [root@localhost ~]#date
13 Thu Aug 22 16:35:44 CST 2019
14 [root@localhost ~]#date
15 Thu Aug 22 16:35:47 CST 2019
16 [root@localhost ~]#date
17 Thu Aug 22 16:35:48 CST 2019
18 [root@localhost ~]#date +%a
19 Thu
20 [root@localhost ~]#date +%A
21 Thursday
22 [root@localhost ~]#date +%F
23 2019-08-22
24 [root@localhost ~]#date +%H
25 16
26 [root@localhost ~]#date +%I
27 04
28 [root@localhost ~]#date +%m
29 08
30 [root@localhost ~]#date +%d
31 22
32 [root@localhost ~]#date +%M
33 38
34 [root@localhost ~]#date +%h
35 Aug
36 [root@localhost ~]#date +%c
37 Thu 22 Aug 2019 04:38:42 PM CST
38 [root@localhost ~]#date +%T
39 16:39:01
40 [root@localhost ~]#date +%y
41 19
42 [root@localhost ~]#date +%Y
43 2019
44 [root@localhost ~]#date +%Y/m/%d
45 2019/m/22
46 [root@localhost ~]#date +%Y/%m/%d
47 2019/08/22
48 [root@localhost ~]#date +%s
49 1566463197
50 [root@localhost ~]#date +%W
51 33
52 ```

显示时区

 1 ```
 2 [root@localhost ~]#timedatectl 
 3 Local time: Thu 2019-08-22 16:42:43 CST
 4 Universal time: Thu 2019-08-22 08:42:43 UTC
 5 RTC time: Thu 2019-08-22 08:42:43
 6 Time zone: Asia/Shanghai (CST, +0800)
 7 NTP enabled: no
 8 NTP synchronized: no
 9 RTC in local TZ: no
10 DST active: n/a
11 [root@localhost ~]#timedatectl set-timezone Asia/Tokyo #设置时区
12 ```

日历

1 cal
2 
3 cal -y 一年的日历
4 
5 cal 2019 显示某一年的日历

关机重启

 1 - shutdown 默认1分钟之后关机
 2         - shutdown -c 取消关机
 3         - shutdow -r 重启
 4     - TIME
 5         - now 立即
 6         - +n n分钟之后
 7         - hh:mm 指定时间
 8 - 关机命令
 9     - poweroff
10     - halt
11     - init 0
12 - 重启
13     - reboot
14         - -f 强制
15         - -p 关机
16     - init 6            

 

posted @ 2020-04-20 22:53  佛祖让我来巡山  阅读(177)  评论(0编辑  收藏  举报

佛祖让我来巡山博客站 - 创建于 2018-08-15

开发工程师个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

Bootstrap中文网