2.4 Linux基础命令

用户登录

root(超级管理员)用户

一个特殊的管理账户,也被称为超级用户,root已接近完整的系统控制对系统损害几乎有无限的能力。除非必要,不要登录为root。

普通用户

权限有限,造成损害的能力比较有限。

注意

用户是否有超级管理权限区别在于UID,超级用户UID为0。

CentOS 6 普通用户UID从500开始;CentOS 7 普通用户UID从1000开始。

[23:19:41 root@tencent ~]#id root
uid=0(root) gid=0(root) groups=0(root)
[23:19:45 root@tencent ~]#
[23:20:11 root@tencent ~]#id  yxj
uid=1000(yxj) gid=1001(yxj) groups=1001(yxj)
[23:20:15 root@tencent ~]#

 

终端 Terminal

1、设备终端:键盘、鼠标、显示器

2、物理终端:/dev/console,控制台console

3、串行终端:/dev/ttyS#

4、虚拟终端:/dev/tty#,tty可以有几个,Ctrl+Alt+F# 进行切换

5、图形终端:/dev/tty7,startx,xwindows

6、伪终端:/dev/pty,/dev/pts/#。pty,ssh远程连接

查看当前的终端设备

[23:30:46 root@tencent ~]#tty
/dev/pts/1
[23:30:48 root@tencent ~]#

注意:有意思的是,CentOS7 可以使用 init 3 从图形界面进入命令行终端,也可以使用 init 5 从命令行终端进入图形终端

 

交互式接口

交互式接口:启动终端后,在终端设备附加一个交互式应用程序

GUI:Graphic User Interface

X protocol,windows manager,desktop

Desktop:

Gnome(C,图形库gtk)

KDE(C++,图形库qt)

XFCE(轻量级桌面)

CLI:Command Line Interface

shell 程序

 

Shell

shell 是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把他送入内核去执行。shell 也被称为Linux的命令解释器,是一种高级程序设计语言。

查看当前使用shell

[23:52:02 root@tencent ~]#echo $SHELL
/bin/bash
[23:52:07 root@tencent ~]#

查看当前支持的shell类型

[23:52:07 root@tencent ~]#cat /etc/shells 
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh
[23:52:40 root@tencent ~]#

 

命令提示符

命令提示符:prompt

[root@localhost ~]#

# 代表管理员

$ 代表普通用户

显示提示符格式

[root@tencent ~]#echo $PS1
[\u@\h \W]\\$
[root@tencent ~]#

修改提示符格式

[root@tencent ~]#PS1="\[\e[31m\][\t \u@\h \W]\\$\[\e[0m\]"
[23:59:17 root@tencent ~]#

修改符号含义

\e 控制符\033

\h 主机名简称

\w 当前工作目录

\t 24小时时间格式

\! 命令历史数

\u 当前用户

\H 主机名

\W 当前工作目录基名

\T 12小时时间格式

\# 开机后命令历史数

注意:修改命令提示符只在当前终端有效,如果需要全局长期使用,请固化到 /etc/profile.d/ 脚本中

 

内建命令和外部命令

内建命令

内建命令集成于shell中,外部命令存在于文件中。系统会优先调用集成在系统中的内建命令,然后才会访问速度慢的外部命令。

可以使用 type 命令查看命令是内建命令还是外部命令。

可以使用 help 命令查看内建命令列表。

可以使用 enable 命令启用或禁用内建命令,禁用的内建命令使用 help 命令查看时该命令前会显示 * 符号。

内建命令标示

[00:08:18 root@tencent ~]#type pwd
pwd is a shell builtin
[00:08:21 root@tencent ~]#

查看内建命令列表

[00:12:49 root@tencent ~]#help

启用内建命令

enable cmd

禁用内建命令

enable -n cmd

外部命令

在文件系统路径下有对应的可执行程序文件。

可以使用 which -a | --skip-alias ; whereis 查看路径

外部命令标示

[00:08:09 root@tencent ~]#type cat
cat is /usr/bin/cat
[00:08:17 root@tencent ~]#

同时是内建和外部命令

[00:09:26 root@tencent ~]#type -a echo 
echo is a shell builtin 
echo is /usr/bin/echo 
[00:09:34 root@tencent ~]#

系统初始 hash 表为空,当外部命令执行时,默认会从 PATH 路径下寻找该命令,找到后会将这条命令的路径记录到 hash 表中,当再次使用该命令时,shell 解释器会首先查看 hash 表,存在将执行,如果不存在将会去 PATH 路径下寻找,利用 hash 缓存表可大大提高命令的调用速率。

hash 常用用法

hash              显示 hash 缓存
hash -l           显示 hash 缓存,可作为输入使用
hash -p path name 将命令全路径 path 起别名为 name
hash -t name      打印缓存中 name 缓存
hash -d name      清除 name 缓存
hash -r           清除缓存

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值