zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Linux 终端类型、获取帮助

2023-02-18 16:34:59 时间

Linux用户类型

Root用户:超级管理员,权限很大
普通用户:权限有限

终端 terminal

终端类型

物理终端:鼠标、键盘、显示器

虚拟终端:软件模拟出来的终端

  • 控制台终端: /dev/console
  • 串行终端:/dev/ttyS#
  • 虚拟终端:tty:teletypewriters, /dev/tty#,tty 可有n个,Ctrl+Alt+F#
  • 图形终端:startx, xwindows
  • 伪终端:pty:pseudo-tty , /dev/pts/# 如:SSH远程连接
说明 命令
查看当前所在终端的名称: tty
查看登录的用户和终端名称: who am i
查看当前的主机谁在登录以及登录的终端名: who --- 点地址的就是远程登录上来的
登录系统的用户正在做的操作 w

Shell

作用:接收用户输入的命令并把它送入内核去执行

各种shell

image

  • sh:Steve Bourne
  • bash:Bourne-Again Shell,GPL,CentOS和Ubuntu默认使用(sh的增强版)
  • csh:c shell , C 语言风格
  • tcsh
  • ksh :Korn Shell, AIX 默认 shell
  • zsh: MacOS默认shell
    查看当前使用的shell类型: echo $SHELL
    查看当前系统支持的shell:cat /etc/shells

shell提示符

提示符的组成:

[当前用户@主机名 当前目录] #或$

修改提示符的方法:

  • 永久生效:修改配置文件的方式
  • 当前生效: 修改$PS1变量
    echo $PS1
    \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$

PS1提示符说明:

  • \e 控制符\033
  • \u 当前用户
  • \h 主机名简称
  • \H 主机名
  • \w 当前工作目录
  • \W 当前工作目录基名
  • \t 24小时时间格式
  • \T 12小时时间格式
  • ! 命令历史数
  • # 开机后命令历史数
ubuntu修改提示符颜色
echo "PS1='\[\e[1;35m\][\u@\h \W]\\$\[\e[0m\]'" >> .bashrc

执行命令

命令格式

  • 命令 [参数] [对象]
  • 命令 [子命令] [对象]  (较新的命令) 例如: hostnamectl set-hostname xxx
注意:
多个命令可以用 ";" 符号分开
一个命令可以用\分成多行
取消和结束命令执行:Ctrl+c,Ctrl+d

命令参数的风格

  • 短选项:UNIX 风格选项,-c 例如:-l, -h
  • 长选项:GNU风格选项,--word 例如:--all, --human
  • BSD风格选项: 一个字母,例如:a,使用相对较少

linux命令的分类:

  • 内部命令:集成在shell中的,登录后自动加载到内存中后台运行
  • 外部命令:在文件系统路径下有对应的可执行程序文件,当执行命令时才从磁盘加载至内存中,执行完毕后从内存中删除
    区分命令类型的方法:type command
    查看所有的内部命令: enable | wc -l
    查看外部命令路径:which 、 whereis

$PATH

存储了外部命令的路径

hash缓存表

  • 默认为空,第一次执行外部命令的时候,默认从PATH存储的路径下寻找,找到后会将这个命令的路径记录到hash表中,
  • 再次执行命令的时候会首先从hash表中查看是否存在,存在就直接会执行
说明 命令
显示hash缓存 hash
清除缓存 hash -r
清除指定命令的缓存 hash -d name

命令别名

显示命令的别名: alias
设置命令的别名: alias 命令 别名
取消命令的别名: unalias 别名

范例: 扫描新加的磁盘
alias scandisk='echo - - - > 
/sys/class/scsi_host/host0/scan;echo - - - > 
/sys/class/scsi_host/host1/scan;echo - - - > /sys/class/scsi_host/host2/scan'

命令执行的优先级

别名>内部命令>外部命令
定义的别名命令可以和内/外部命令同名
如果内部命令和外部命令一样: 想要执行外部命令的方法: \commamd或 'command'

执行命令的过程

  • 1.判断路径
  • 2.检查别名
  • 3.判断命令类型
  • 4.根据路径查找命令的可执行文件

bash快捷键

快捷键 说明
Ctrl + s 阻止屏幕输出,锁定
Ctrl + q 允许屏幕输出,解锁
Ctrl + c 终止
Ctrl + a 光标移到命令行首,相当于Home
Ctrl + e 光标移到命令行尾,相当于End

Linux查看帮助的方法

whatis

whatis 命令的简单说明,使用前需要使用mandb来生成数据库
whatis 命令名称
执行whatis命令的时候,括号里面的数字就对应man手册里面的章节,带P的是开发者文档

command --help

查看指定命令的帮助

man and info

使用 man 手册(manual): man COMMAND
man 提供命令帮助的文件,手册页存放在/usr/share/man

中文man需安装包

  • man-pages
  • man-pages-zh-CN

man 章节号

用户命令 1
系统调用 2
C语言库调用 3
设备文件及特殊文件 4
配置文件格式 5
杂项 7
管理类的命令 8

1和8:命令怎么用 5:配置文件的格式

格式说明

  • [] 表示可选项
  • CAPS或 <> 表示变化的数据
  • ... 表示一个列表
  • x |y| z 的意思是“ x 或 y 或 z ”
  • -abc的 意思是 -a -b –c
  • { } 表示分组

命令自身提供的官方使用指南

存放位置:/usr/share/doc