一、修改命令提示符
1、查看提示符格式:echo $PS1
2、修改提示符格式:
- PS1=“\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]”
- 1 :字体高亮 5 :闪烁 41 :红色背景
- 33 :字体颜色(30黑31红32绿33黄34蓝35紫36青37白)
- \h主机名简称 \H 主机名全称
- \w当前工作目录 \W当前工作目录基名
- \$提示字符:#root用户 $普通用户
- \[\e[0m\]提示符颜色到此结束(否则后续输出的命令也会改变颜色)
3、保存:
- 在/etc/profile.d目录下创建一个后缀为.sh的文件(例如:/etc/profile.d/env.sh),将对 PS1的修改保存在该文件下,source /etc/profile.d/env.sh重新读取配置文件。
二、执行命令(1.内部命令,2.外部命令)
- 区别指定命令是内部或外部:type command,外部命令会显示路径。
1、内部命令:由shell自带
- help command;command –help 可获得帮助列表
- enable -n cmd 禁用内部命令
- enable cmd 启用内部命令
- enable -n 查看所有禁用的内部命令
2、外部命令:记录在hash缓存表中
- 查看路径:which –skip-alias command;whereis
- hash 显示hash缓存
- hash -l 显示hash缓存,可作为输入使用
- hash -p path name 将命令全路径path 起别名为name
- hash -t cmd 打印缓存中cmd的路径
- hash -d cmd 清楚cmd缓存
- hash -r 清除缓存
三、命令别名 alias
- alias 显示当前shell进程所有可用的命令别名
- alias name=cmd 给cmd定义别名为name
- unalias 撤销别名
- unalias -a取消所有别名
- 若想永久保存别名,定义在配置文件中:1.仅对当前用户:~/.bashrc; 2.对所有用户用户有效:/etc/bashrc
- bash进程中重新读取配置文件source 或.
- 如果别名与原命令同名(例aliasname),想要执行原命令,使用:\aliasname 、“aliasname” 、‘ aliasname’ 、command aliasname 、/path/command
四、命令history:记录历史的文件~/.bash_history
1、history(管理历史命令)
- 语法:history (选项) (参数)
选项:
n 列出最近的 n条命令
-c 清空所有历史命令
-d n 删除历史命令中指定的编号n的命令
-a 追加本次会话中的新执行的命令历史列表到历史文件
-n 读取历史文件中未读过的行到命令历史列表
-w 保存历史列表到指定的历史文件,把历史文件另备份
-p 展开历史参数成多行,但不存在历史列表中
-s 展开历史参数成一行,附加在历史列表后
2、运行特定的历史命令:
- 语法说明: [!number] [!command] [!!]
参数说明:
number :第几个指令的意思;
command :命令或命令开头几个字母 - 用法介绍:
!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 - 使用up(向上)和down(向下)键来上下浏览从前输入的命令
ctrl+r:在命令历史中搜索命令(reverse-i-search):
ctrl+g:从历史搜索模式退出
3、调用历史参数
- 调用前一个命令中最后一个参数:!$
- Esc, .(点击Esc键后松开,然后点击 . 键)
Alt+ .(按住Alt键的同时点击 . 键)
command !^ 利用上一个命令的第一个参数做cmd的参数
command !$ 利用上一个命令的最后一个参数做cmd的参数
command !* 利用上一个命令的全部参数做cmd的参数
command !:n 利用上一个命令的第n个参数做cmd的参数
command !n:^ 调用第n条命令的第一个参数
command !n:$ 调用第n条命令的最后一个参数
command !n:m 调用第n条命令的第m个参数
command !n:* 调用第n条命令的所有参数
command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数
4、命令历史相关环境变量:
- HISTSIZE 命令历史记录的条数,默认1000
- HISTFILE 指定历史文件,默认为~/.bash_history
- HISTFILESIZE 命令历史文件记录历史的条数
- HISTTIMEFORMAT=“%F %T “ 历史记录显示时间
- HISTIGNORE=“str1:str2*:… “ 忽略str1命令以及str2开头的所有命令
- HISTCONTROL环境变量:
ignoredups 默认,忽略重复的命令,连续且相同为“重复”
ignorespace 忽略所有以空白开头的命令
ignoreboth 相当于ignoredups, ignorespace的组合
history命令相关的配置文件存放在 /etc/profile 或 ~/.bash_profile,更改之后永久有效
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/94194