3-1 查看帮助,命令历史与快捷键
查看帮助,命令历史与快捷键
帮助和编码
命令别名与命令细节
在环境中使用alias name="command [arg]"是保存不住的,需要写入bash的配置文件,个人的配置文件为.bashrc,更改完配置文件后,需要重新读取配置文件
source /path/to/config_file . /path/to/config_file #取消别名 unalias name #别名与命令同名时使用原命令 \command "command" 'command' command command /path/command
命令的不同风格:
ls -l -a #短选项:unix风格选项,两个短选项可以一块写,长短选项不能混写 cat --help #长选项:gnu风格选项 ip a #bsd风格选项:一个字母
命令使用的小技巧:
取消和结束命令执行:ctrl+c(强制停止),ctrl+d(结束程序)
echo "welcome";ls #多个命令可以使用;号隔开 echo "https://kernal\ >.org" #一个命令可以使用\分成多行 type -a #查看这个命令的所有内外部命令
不同引号之间的区别
echo 'echo $path' #输出echo $path echo "echo $path" #输出echo 环境变量的值 echo `echo $path` #仅输出环境变量的值与$()用法一致 echo {1..100} #自动展开1-100的数 echo {1..100..2} #1-100步进为2 echo {a-z} #将字符按照ascii的顺序展开所以中间会夹杂几个符号 echo {a-z} #会将字符按照ascii反向显示 echo {000..100} #定义格式,可以将数字输出都为3位数 echo {a,b}{1,2,3} #完成笛卡尔乘积
单引号为强引用,直接输出,不转换任何值
双引号转换变量
反响单引号会识别命令并执行,也会转换变量的值
同时$(command)的使用方式与``相同
tab键可以命令补全和路径补全,当有两个选择时按两下会将可选项都列出来,centos7可以将字命令补全,现在有一个大命令带子命令的发展趋势
bash快捷键
ctrl+s:锁定屏幕,键盘可以输入,只是不现实了
ctrl+q:解锁屏幕
ctrl+l:清屏,相当于clear命令
ctrl+c:终止命令
ctrl+z:挂起命令
ctrl+a:光标移动到行首,相当于home
ctrl+e:光标移动到行尾,相当于end
ctrl+xx:命令在行首和光标之间移动
ctrl+u:从光标处删除至命令行首
ctrl+k:从光标处删除至命令行尾
alt+r:删除当前整行
alt+b:光标向左删除一个单词
alt+f:光标向右删除一个单词
alt+#,$:#为数字,$为字母,可以将$重复#次打印在屏幕上
...
获取帮助
whatis command可以查询简单的命令时什么,也可以显示命令在帮助手册第几章。当刚刚装好系统的时候whatis时不能用的,需要手动建立数据库,centos6使用makewhatis命令,centos7与ubuntu使用mandb命令。
whatis #查看命令基本作用 mandb #创建whatis数据库centos7和ubuntu命令 makewhatis #创建whatis数据库centos6
当同名的命令或文件都有man帮助时(例如passwd命令和passwd文件说明)有限打开章节数最小的帮助页面
要想查看对应章节数的内容,需要man # command其中#为章节数
用户手册章节:
- 用户命令
- 系统调用
- c库调用
- 设备文件及特殊文件
- 配置文件格式
- 游戏
- 杂项
- 管理类命令
-
linux内核api
man命令的操作方法
space:向文件尾部翻页
b:向文件首部翻屏
d:向文件尾部翻半屏
u:向文件首部翻半屏
q:退出
$:跳转至第$行
1g或gg:回到文件首部
g:翻至文件尾部
/string:搜索string字符串,n向下搜索,n向上搜索
?string:向上搜索,n向上搜索,n向下搜索
-a:可以打开参数的所有文档,退出第一个进入第二个,一次向下
-k:可以列出包含参数的所有章节
-w:打印帮助的路径
info查看帮助
可以进入相关文档,进入二级目录使用回车等
图形界面也有帮助文档
内部命令获取帮助可以使用help command
到相关软件的官方网站获取帮助
例如:
- www.nginx.org/en/docs
- www.httpd.apache.org
- mariadb.com
- dev.mysql.com
- tomcat.appche.org
- www.python.org
ehco命令用法与编码
echo命令
echo:回显,从标准输出显示,并自动在结束时加换行符 -n:不加换行符 -e:转义其他字符,在含有转义字符时应该加上引号 #更改颜色echo -e "\033[31mxxxxx\033[0m" \n:换行 \c:压缩换行 \t:制表符 \0:八进制 \x:十六进制 man ascii #查看ascii表
字符集和编码
unicode与utf-8
unicode只是字符集,储存时为了节省空间使用utf-8编码,utf-8是可变长度储存,从一个字节到4个字节,utf-32是全部使用4个字节存储,utf-16是2个或4个字节,比较浪费空间。
同时utf-8与unicode也有相互转化的对应方式。
命令历史
退出bash时会将内存中的命令历史存入.bash_history,history可以查看命令历史。
history !string #执行以string开头的历史命令 !?string #重复前一个包含string的命令 !string:p #仅打印民联历史,而不执行 !! #执行钱一条命令 !n #执行hsitory历史输出对应序号n命令 !-# #执行前#条命令 !:0 #执行上一条命令去除参数 !:# #取上一条命令的第几个参数(0为命令) !* #上条命令的所有参数 !$ #上调命令的最后一个参数 ^string #删除上调命令中的第一个string ^sting1^string2 #将上条命令中的所有string1替换为string2 !:gs/string1/string2 #将上调命令中的所有string1替换为string2 -c:删除所有命令历史 -n:显示最近的n条历史 -a:追加本次绘画新执行的命令历史列表至历史文件 ... $histsize:命令历史记录的条数 $histfile:指定历史文件,默认为~/.bash_history $histfilesize:命令历史文件记录历史的条数 $histtimeformat="%f %t ":显示时间 $histignore="str1:str2"忽略str1命令,str2开头的历史 控制命令历史的记录方式: $histcontrol: ignoredups:默认,忽略重复的命令,连续且相同为“重复” ignorespace:忽略所有以空白开头的命令 ignoreboth:相当于ignoredups,ignorespace的组合 erasedups:删除重复命令 export 变量名=“值” #存放在/etc/profile 或 ~/..bash_profile中前者时全局作用,后者只有对应用户变量
显示与修改时间
date:显示系统时间 +%f:显示年月日 +%t:显示时分秒 +%:有各种格式可以查看帮助查询 -d:'-1 day'等方式显示指定时间并输出 -u:显示0时区时间 clock:或hwclock:硬件时间 -s:将系统时间设置为硬件时间 -w:将硬件时间设置为系统时间 ntpdate ip:同步为指定服务器的时间 ctl:显示日历(1752年9月)
定时关机
shutdown -r now #现在重启计算机 shutdwon -h +n #过n分钟后关闭计算机 shutdown -c #取消关机计划 shutdown -h +15 "shutdown after 15minutes" #15分钟后关闭计算机并提示“15分钟后关机”!注意:超过15分钟的提示将不再显示
设置时区
timedatectl #设置时区的命令 timedatectl list-timezones #列出所有时区 timedatectl set-timezone #设置时区
/etc/issue文件
这个文件是登陆终端前显示的相关信息,通过一定语法,将一定信息显示在登陆之前。
\n:hostname信息
\m:等价于uname -m显示主机架构
\r:等价于unmae -r显示内核版本
\t:显示时间
\s:等价于uname -s显示系统名称
\l:显示终端
screen命令
screen可以打开一个独立的屏幕,终端中断连接后也不会终止命令,当编译内核时或者需要长时间运行不间断命令时需要。
screen screen -s name #打开一个共享屏幕 screen -x name #需要连接到同一机器,且用户相同,即可同步,也可以看到对方的操作 ctrl+a,d #临时剥离当前绘画,可以使用-r回复 screen -r #恢复某screen绘画 screen -ls #将现有的screen窗口都列出来
下一篇: Linux基础系统优化(二)