Linux命令格式、终端类型和获取帮助的方法
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

- 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:命令怎么用 5:配置文件的格式
格式说明
- [] 表示可选项
- CAPS或 <> 表示变化的数据
- ... 表示一个列表
- x |y| z 的意思是“ x 或 y 或 z ”
- -abc的 意思是 -a -b –c
- { } 表示分组
命令自身提供的官方使用指南
存放位置:/usr/share/doc
Linux命令格式、终端类型和获取帮助的方法的更多相关文章
- Linux命令格式及7个常见终端命令
Linux命令格式 Linux常见的7个终端命令
- 12款最佳Linux命令行终端工具, 20款优秀的 Linux 终端仿真器
12款最佳Linux命令行终端工具 如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的 ...
- linux命令格式及基础命令(一)
linux命令格式 ~]#COMMAND [选项] [参数] 例如: ~]#ls 不带任何选项和参数 ``` stylus ~]#ls -lh /etc 列出/etc下所有文件和目录,同时要求以格式和 ...
- [转]12款最佳Linux命令行终端工具
摘要 “工欲善其事必先利其器”,作为菜鸟,也是从别人那里偷学来的一些东东.今天看到同事用到一个终端命令行工具,觉得自己弱爆了.然后在网上搜了下该工具.发现类似的工具还是挺多的,只是自己不知道罢了. 原 ...
- 12款最佳Linux命令行终端工具
12款最佳Linux命令行终端工具 如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的终端软件 ...
- Linux命令格式及帮助命令详解
昨天看了一个教程,关于Linux命令的,本来以为当是复习随便看看的,结果看了不禁汗颜,这个真挺有学问的,很多东西都是我还不知道的,故此做总结,此文适合于对Linux命令有一定了解但又不是很深入的孩子, ...
- 解读Linux命令格式(转)
解读Linux命令格式 环境 Linux HA5-139JK 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x8 ...
- linux命令格式及who、whoami、su和passwd命令
linux命令格式及who.whoami.su和passwd命令 1. Linux命令的格式 Linux命令的语法格式: 命令 [选项] [参数] 命令格式中命令.选项.参数的具体含义: 命令:告诉L ...
- 【深入学习linux】Linux命令格式
一.命令基本格式 命令提示符 [root@localhost ~]# root 代表当前登录用户,Linux当中管理员账号是 root localhost 代表主机名 ~ 代表当前所在目录(家目录), ...
随机推荐
- 网络协议自动化逆向工具开山鼻祖discoverer 分析
本文系原创,转载请说明出处:信安科研人 也可关注微信公众号:信安科研人 原论文发表在2007年的USENIX上,链接如下:https://www.usenix.org/legacy/event/sec ...
- 2021.08.16 P1300 城市街道交通费系统(dfs)
2021.08.16 P1300 城市街道交通费系统(dfs) P1300 城市街道交通费系统 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 城市街道交费系统最近创立了.一 ...
- 移动端屏幕适配(rem+js)
什么是移动端适配 在制作webapp时,一个很关键的问题就是适配各种机型不同屏幕的大小,让每种机型上的布局看起来都尽量一样. 也就是说用同一套代码在不同分辨率的手机上跑时,页面元素间的间距.留白,以及 ...
- EntityFramwork常见问题
1.常用的语句有哪些 添加migration dotnet ef migrations add [MIgrationName] 删除刚添加的migration dotnet ef ...
- XCTF练习题---CRYPTO---safer-than-rot13
XCTF练习题---CRYPTO---safer-than-rot13 flag:no_this_is_not_crypto_my_dear 解题步骤: 1.观察题目,下载附件 2.打开后发现是个文件 ...
- “如何实现集中管理、灵活高效的CI/CD”研讨会报名即将截止
如何实现集中管理.灵活高效的CI/CD ZOOM中文在线研讨会将于 2022年3月29日,星期二,下午3:00-5:00, 也就是 明天 举行, 如果您还未注册,点击按钮,立即注册此次研讨会(注册即可 ...
- 抽象类 & 接口
抽象类 模板设计模式 把每个类中类似的job 方法"提炼"出来, 成为一个抽象函数(同时也有一个抽象类) 然后把另外calcuateTime这个函数内容,"提炼" ...
- [AcWing 26] 二进制中1的个数
点击查看代码 class Solution { public: int NumberOf1(int n) { unsigned un = n; int res = 0; while (un) { re ...
- 聊聊如何在华为云IoT平台进行产品开发
摘要:华为云物联网平台承载着南北向数据互通的功能职责. 本文分享自华为云社区<如何基于华为云IoT物联网平台进行产品开发>,作者: Super.雯 . 华为云物联网平台承载着南北向数据互通 ...
- SpringBoot整合MybatisPlus基本的增删改查,保姆级教程
概述 MybatisPlus是国产的第三方插件, 它封装了许多常用的CURDapi,免去了我们写mapper.xml的重复劳动,这里介绍了基本的整合SpringBoot和基础用法. 引入依赖 在项目中 ...