linux学习-linux基础和帮助
1.终端terminal
(1)设备终端 键盘,鼠标,显示器
(2)物理终端(/dev/console) 控制台concole
(3)串行终端(/dev/ttyS#) ttyS
(4)虚拟终端(tty:teletypewriters,/dev/tty#)
tty可以有n个,Ctrl+Alt+F#
(5)图形终端(/dev/tty7)startx,xwindows
CentOS6:Ctrl+Alt+F7
CentOS7:在哪个终端启动,即位于哪个虚拟终端
(6)伪终端(pty:pseudo-tty,/dev/pty/#)
pty,SSH远程连接
查看当前终端设备命令:tty
2.命令提示符
(1)命令提示符:prompt
[root@localhost~]#
# 代表管理员
$ 代表普通用户
(2)显示提示符格式
[root@localhost~]#echo $PS1
(3)修改提示符格式
PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
PS1="\[\e[1;32m\][\[\e[0m\]\t \[\e[1;33m\]\u\[\e[36m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"
\e 控制符\033 \u 当前用户
\h 主机名简称 \H 主机名
\w 当前工作目录 \W 当前工作目录基名
\t 24小时时间格式 \T 12小时时间格式
\! 命令历史数 \# 开机后命令历史数
3.Hash缓存表
系统初始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 清除缓存
4.命令别名
(1)显示当前shell进程所有可用的命令
alias
(2)定义别名NAME,其相当于执行命令VALUE
alias NAME='VALUE'
以上仅对当前shell进程生效,如果想永久生效,要定义在配置文件中:
仅对当前用户:~/.bashrc
对所有用户生效:/etc/bashrc
编辑以上配置文件后不会立即生效,可以以下命令重新读取配置文件使其生效:
souce /path/to/config_file
. /path/to/config_file
(3)撤销别名:unalias
unalisa [-a] name [name...]
-a 取消所有别名
如果别名同原命令同名,如要执行原命令,可使用
\ALIASNAME
"ALIASNAME"
'ALIASNAME'
command ALIASNAME
/path/command
5.日期与时间
Linux的两种时钟
系统时钟:由Linux内核通过CPU的工作频率进行的
硬件时钟:主板
相关命令:
date 显示和设置系统时间
date +%s
date -d @1509536066
hwclock,clock:显示硬件时钟
-s,--hctosys 以硬件时钟为准,校正系统时间
-w,--systohc 以系统时钟为准,校正硬件时间
时区:/etc/localtime
显示日历:cal -y
6.命令行历史
重复前一个命令,有4种方法
重复前一个命令使用上方向键,并回车执行
按 !! 并回车执行
输入 !-1 并回车执行
按 Ctrl+p 并回车执行
!:0 执行前一条命令(去除参数)
Ctrl + n 显示当前历史中的下一条命令,但不执行
Ctrl + j 执行当前命令
!n 执行history命令输出对应序号n的命令
!-n 执行history历史中倒数第n个命令
!string 重复前一个以“string”开头的命令
!?string 重复前一个包含string的命令
!string:p 仅打印命令历史,而不执行
!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
!*:p 打印输出 !*(上一条命令的所有参数)的内容
^string 删除上一条命令中的第一个string
^string1^string2 将上一条命令中的第一个string1替换为string2
!:gs/string1/string2 将上一条命令中所有的string1都替换为 string2
Ctrl + r 在历史命令中搜索命令
Ctrl + r 从历史命令搜索中退出
要重新调用上一条命令的最后一个参数:
!$ 用!$表示
ESC,. (点击ESC键后松开,再点击 . 键)
ALT+. (按住ALT键同时点击 . 键)
7.简单命令
(1)关机与重启
关机:halt , poweroff
重启:reboot
-f:强制,不调用shutdown
-p:切断电源
关机或重启:shutdown
shutdown [OPTION]...[TIME] [MESSAGE]
-r reboot即重启
-h halt即关机
-c cancel 取消关机
TIME:无指定,默认相当于+1(CentOS7)
now:立刻,相当于+0
+m:相对时间表示法,几分钟之后;例如 +3
hh:mm:绝对时间表示,指明具体时间
(2)用户登录信息查看命令:
whoami:显示当前登录有效用户
who:系统当前所有的登录会话
w:系统当前所有的登录会话及所做的操作
(3)screen命令:
screen -S [SESSION] 创建新的screen会话
screen -x [SESSION] 加入screen会话
screen -ls 显示所有已经打开的screen会话
screen -r [SESSION] 恢复某screen会话
exit 退出并关闭screen会话
Ctrl+a,d 剥离当前screen会话
(4)echo命令:
echo [-neE] [字符串]
-E (默认)不支持 \ 解释功能
-n 不自动换行
-e 启用 \ 字符解释功能
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
(5)history命令:
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
-c 清空命令历史
-d offset 删除历史中指定的第offset个命令
n 显示最近的n条历史命令
-a 追加本次会话新执行的命令历史列表至历史文件
-r 读历史文件附加到历史列表
-w 保存历史列表到指定的历史文件
-n 读历史文件中未读过的行到历史列表中
-p 展开历史参数成多行,但不存在历史列表中
-s 展开历史参数成一行,附加在历史列表中
命令历史相关环境变量
HISTSIZE:命令历史记录的条数
HISTFILE:指定历史文件,默认为~/.bash_history
HISTFILESIZE:命令历史文件记录历史的条数
HISTTIMEFORMAT="%F %T" 显示时间
HISTIGNORE="str1:str2*...." 忽略str1命令,str2开头的命令
HISTCONTROL:控制命令历史的记录方式
ignoredups:默认,忽略重复的命令,连续且相同为“重复”
ignorespace:忽略所有以空白字符开头的命令
ignoreboth:相当于ignoredups,ignorespace的组合
相关变量存放在 /etc/profile 或 ~/bash_profile
8.bash快捷键
Ctrl + l 清屏,相当于clear命令
Ctrl + o 执行当前命令,并重新显示本命令
Ctrl + s 阻止屏幕输出,锁定
Ctrl + q 允许屏幕输出
Ctrl + c 终止命令
Ctrl + z 挂起命令
Ctrl + a 光标移到命令行首,相当于Home
Ctrl + e 光标移到命令行尾,相当于End
Ctrl + f 光标向右移动一个字符
Ctrl + b 光标向左移动一个字符
Alt + f 光标向右移动一个单词尾
Alt + b 光标向左移动一个单词首
Ctrl + xx 光标在命令行首和光标之间移动
Ctrl + u 从光标处删除至命令行首
Ctrl + k 从光标处删除至命令行尾
Alt + r 删除当前整行
Ctrl + w 从光标处向左删除至单词首
Alt + d 从光标处向右删除至单词尾
Ctrl + d 删除光标处的一个字符
Ctrl + h 删除光标前的一个字符
Ctrl + y 将删除的字符粘贴至光标后
Alt + c 从光标处开始向右更改为首字母大写的单词
Alt + u 从光标处开始,将右边一个单词更改为大写
Alt + l 从光标处开始,将右边一个单词更改为小写
Ctrl + t 交换光标处和之前的字符位置
Alt + t 交换光标处和之前的单词位置
Alt + N 提示输入指定字符后,重复显示该字符N次
注意:Alt组合快捷键经常和其它软件冲突
9.获得帮助
(1)whatis 显示命令的简短描述
刚安装后不可立即使用,可用makewhatis | mandb 制作数据库
使用示例:what cal 或 man -f cal
(2)获得帮助
内部命令:help COMMAND 或 man bash
外部命令:
(1) COMMAND --help 或 COMMAND -h
(2) 使用手册(manual) man COMMAND
(3) 信息页 info COMMAND
(4) 程序自身的帮助文档 README,INSTALL,ChangeLog
(5) 程序官方文档
(6) 发行版的官方文档
(7) Google
(3)man命令
提供命令帮助的文件,手册页存放在/usr/share/man,配置文件 /etc/man.config | man_db.conf,如果支持中文,还需安装包man-pages-zh-CN
(1) man章节
man 1 man
1:用户命令;
2:系统调用;
3:C库调用;
4:设备文件及特殊文件;
5:配置文件格式;
6:游戏;
7:杂项;
8:管理类命令;
9:Linux内核API
(2) man帮助段落说明
NAME 名称及简要说明
SYNOPSIS 用法格式说明
[] 可选内容
<> 必选内容
a|b 二选一
{ } 分组
... 同一内容可出现多次
DESCRIPTION 详细说明
OPTIONS 选项说明
EXAMPLES 示例
FILES 相关文件
AUTHOR 作者
COPYRIGHT 版本信息
REPORTING BUGS bug信息
SEE ALSO 其它帮助参考
(3) 相关命令
man [章节] keyword 查看man手册页
man -a keywork 列出所有帮助
man -k keyword 列出所有匹配的页面
man -f keywork 相当于whatis
man -w [章节] keywork 打印man帮助文件的路径
(4) 手册中操作方法
space:向下翻屏
b:向上翻屏
d:向下翻半屏
u:向上翻半屏
q:退出
#:跳转至第#行
1G:回到文件首部
G:翻至文件尾部
/KEYWORD:搜索KEYWORD关键字,从当前位置向下搜,不区分大小写;按 n 搜索下一个,N 搜索上一个
?KEYWORD:搜索KEYWORD关键字,从当前位置向上搜,不区分大小写;按 n 表示搜索方向同向的下一个,N 表示搜索方向反向搜索上一个
linux学习-linux基础和帮助的更多相关文章
- Linux学习-计算机基础
Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...
- Linux学习-->linux系统在移动硬盘的安装
由于自己看了一些文章和linux的好奇,想来一窥Linux的奥秘,因此自己准备学习使用Linux系统,这里记录下自己的安装过程,方便以后自己重装系统时进行查阅. 参考的书籍是鸟哥的<Linux私 ...
- linux学习之——基础命令
Linux体系基础命令: Linux是一个命令行组成的操作体系!精华在命令行,岂论图形界面成长到什么水平这个原理是不会变的,Linux命令有许多壮大的效用:从简单的磁盘操作.文件存取.到举办庞大的多媒 ...
- Linux学习 -- Shell基础 -- 概述
Shell是什么? 命令解释器 编程语言 Linux支持的Shell类型 cat /etc/shells 主要学习 bash 脚本执行方式 echo echo -e 单引号 -- 原始字符串 双引号 ...
- linux学习笔记——基础命令
最近看了一些老男孩linux运维视频,挺不错的,特此记录一下 linux组成 gun组件 shell等 linux内核 其他软件 linux主要内核: linux kernel2.2 linux ke ...
- Linux学习——Shell基础
1 shell概述 Shell 是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序. Shell 还是一 ...
- Linux学习 -- Shell基础 -- Bash变量
变量 默认是字符串型,数值型需要显示指定 等号两侧都不能有空格 单引号:原始字符串 双引号:保留转义 命令结果作为值:反引号 或 $() 环境变量一般用大写 自定义变量 变量定义 name=& ...
- Linux学习 -- Shell基础 -- Bash基本功能
历史命令 history -c clear -w 写入 ~/.bash_history 默认保存1000条, 可在/etc/profile中修改 调用 Tab补全 命令.目录.文件 命令别名 ...
- linux学习笔记基础篇(一)
一.IP操作 1.临时修改IP ,执行命令 ifconfig 网卡名称 新ip :例如 ifconfg nescc 192.168.1.110 ,重启失效 2.重启网络 ,执行命令 syste ...
随机推荐
- 如何利用阿里视频云开源组件,快速自定义你的H5播放器?
摘要: Aliplayer希望提供一种方便.简单.灵活的机制,让客户能够扩展播放器的功能,并且Aliplayer提供一些组件的基本实现,用户可以基于这些开源的组件实现个性化功能,比如自定义UI和自己A ...
- Skyline(6.x)-二次开发手册使用技巧
毕业设计选择 Skyline 的 Web 端二次开发,由于以前没有接触过 ActiveX 控件的使用,二次开发手册是英文的读起来有点吃力,并且 IE 直接控制台输出 ActiveX 控件创建的对象看不 ...
- mysql-M-S-S模型 中继器 级联
1.基础环境 三台虚机并且安装有mysql 并且同步好数据库 2.主服务器-创建账号并授权 mysql> create user 'mslave'@'X.X.X.X' identified by ...
- Vi 常用命令列表
基本上vi可以分为三种状态,分别是命令模式(command mode).输入模式(Insert mode)和末行模式(last line mode),各模式的功能区分如下: 1) 命令模式(comma ...
- redis为什么内存不宜过大
redis的高性能.稳定性都是不用怀疑的,但如果redis塞入数据过多,内存过大,那如果出问题,那它可能会给我们的就是灾难性的. 1 主库宕机 主库宕机,常见的策略为“切主”.具体为从该集群剩余从库中 ...
- 软件体系结构-分层、代理、MVC、管道与过滤器
什么是软件架构? 程序或计算系统的软件体系结构是系统的一个或多个结构,包括软件元素.这些元素的外部可见属性以及它们之间的关系. ——Software Engineering Institute(SEI ...
- 永远让比较函数对相等的值返回false
今天在刷OJ的时候,有一道题一直Runtime Error,查错出来是比较函数写挂掉了,但是不知道错误在哪,于是查阅资料:永远让比较函数对相等的值返回false 具体可点击此处查看分析:链接 另外,在 ...
- 001---mysql分库分表
mysql分库分表 一.整体的切分方式 1.分库分表:即数据的切分就是通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)中,以达到分散单台设备负载的效果 2.数据的切分根 ...
- SAP选择屏幕开发(二)(转)
原文链接:https://blog.csdn.net/wtxhai/article/details/90698683 1.2.SAP屏幕框架的创建 SAP页面设计中的框架不但可以保证SA ...
- 《JAVA设计模式》之状态模式(State)
在阎宏博士的<JAVA与模式>一书中开头是这样描述状态(State)模式的: 状态模式,又称状态对象模式(Pattern of Objects for States),状态模式是对象的行为 ...