定好的每天坚持写学习笔记,翻看最新的博客时间还在一月份,有些汗颜。三分钟热度这老毛病又犯了。多说无益,还是把近期学的知识整理一下,以备日后便于查阅。
1.type [-tpa] name
通过man type查看文档,发现type属于系统内置命令,这个命令作用是找出“执行文件”并且可以通过type命令获取该查询命令是否为内置命令。
用法:
① type 不加任何参数会显示name是内部还是外部命令。
② type -t会将name以下面关键字显示出相应的意义:file:外部命令;alias:命令别名;builtin:bash内置的命令;
③ type -p 后接的命令是外置命令时会显示该命令的完整文件名
④ type -a
2. env:查看环境变量并显示其内容。
3. export:可以用此命令设置将局部变量转换为环境变量,如果后边不跟变量则会将系统所有的环境变量显示出来。
3. set:查看系统内所有的变量包括了env所显示的环境变量。
4. PS1:通过这个变量可以设置命令提示符的显示,Centos 默认内容为PS1='[\u@\h \W]'具体意义如下:
\d:显示星期月日。
\H:完整主机名例如:www.test.com。 \h:取主机名在第一个小数点之前的名字例如:www 。
\t:以24小时格式显示时间HH:MM:SS。 \T:以12小时格式显示时间。
\A:以24小时格式显示时间HH:MM。 \@:以12小时"am/pm"格式显示时间。
\u: 显示当前用户的用户名。
\v:BASH的版本信息。
\w:完整的工作目录名称。 \W:利用basename函数获取工作目录名称。
\#:显示执行的第几条命令。
\$:提示符,root提示符为#,其他则提示$。
5. 语系变量locale
locale -a 显示所有系统支持的语系。
locale 不加参数显示系统所有的语系变量以及对应的值。
语系文件都会保存在/usr/lib/locale这个目录当中,系统默认的语系文件放置在/etc/sysconfig/i18n文件中。可以使用LANG=zh_CN.utf8来进行设置。
6. read 此命令的作用可以让用户与计算机进行交互式的操作,使用方式为:read [-pt] variable。
read 变量名 :这时就会等待用户输入内容,并将其赋予该变量。
read -p “提示”变量名:-p 参数的作用是起到提示信息的作用
read -t time 变量名:-t 后跟时间单位为秒,表示在限定时间内如果没有进行输入,则会终止此次操作。
7. declare 声明变量类型。
-a : 声明数组类型变量。例如:var[1]="test1" 读取时为echo "${var[1]}"
-i : 声明整型变量。
-x : 用法与export相同,将变量设置成环境变量。
-r : 将变量设置成只读类型。注意:如果设置成只读类型,则要注销再登陆后才可以复原该变量类型。-p : 可以单独列出变量类型。
8. 变量的删除与替换
$(变量#关键字) : 从变量起始位置开始,将符合“关键字”的最短数据删除。
$(变量##关键字) : 从变量起始位置开始,将符合“关键字”的最长数据删除。
$(变量%关键字) : 从变量结束位置开始,将符合“关键字”的最短数据删除。
$(变量%%关键字) : 从变量结束位置开始,将符合“关键字”的最长数据删除。
9. 判断某一变量是否存在
newVar=${old_var -content}若old_var变量存在则保持不变,不存在则newVar=content,如果old_var为空字符串时,newVar=" "
newVar=${old_var:-content}使用":-"设置方法则当old_var=""时newVar=content。
newVar=${old_var+content}若old_var没设置则newVar="",若old_var为空或有值时,newVar=content。
newVar=${old_var:+content}当old_var没设置或为空时newVar=old_var,不为空时newVar=content。
newVar=${old_var=content}old_var没设置时newVar=content,old_var为空时newVar为空,old_var有值时newVar=old_var,即newVar的值在old_var变量设置时相等。
newVar=${old_var:=content}old_var没有设置或者设置为空时,newVar=content,old_var有值时newVar=old_var。
newVar=${old_var?content}如果old_var不存在时newVar=content,存在时newVar=old_var。
10. history历史命令
history -c 将目前shell中所有history内容全部消除。
history -a 将目前新增的history命令新增入histfiles中,若没有histfiles默认写入~/.bash_history中。
history -r 将histfiles文件的内容读到目前这个shell中。
history -w 将目前history记忆内容写入histfiles中。
!number 执行history中第几条命令。
!command 由最近的命令向前搜开头command的那个命令并执行。
!! 执行上一条命令相当于按↑按键
11. 配置bash登陆与欢迎信息
在终端登陆的提示信息需要配置/etc/issue这个文件,默认信息显示如下
\d :本地端时间的日期;
\l :显示第几个终端机接口;
\m :显示硬件等级;
\n :显示主机的网络名称;
\o :显示domain name;
\r :操作系统的版本等同于uname-r;
\t :显示本地端时间;
\s :操作系统名称;
\v :操作系统版本。
配置远程登录提示信息需要配置/etc/motd这个文件
12. source 读入环境配置文件的命令
13. 查阅目前按键内容
经常用的几条命令是:CTRL +C 终止目前的命令;CTRL +D输入结束;CTRL +M等于回车;CTRL +S暂停屏幕输出;CTRL +Q恢复屏幕输出;CTRL +U在提示符下,将整行命令删除;CTRL +Z暂停目前命令。
14. cut 命令
cut -d '分割字符'将一段数据通过设定的分割字符来分成几段;
-f fields(数字) 通常与-d参数共同使用,使用-d分段完成后使用-f 来取出第几段的数据。
-c 以字符的单位取出固定字符区间,需要将操作的数据排列整齐。
cut在处理多空格相连的数据时,相对困难。
15. grep 与cut命令一样都是针对数据的每一行进行分析的。
grep -a 将binary文件以text文件的方式查找数据。
-c 计算找到“查找字符串”的次数。
-i 忽略大小写的不同
-n 输出行号
-v 反向选择,显示没有关键字的那些数据
--color 可以将找到的关键字加上颜色显示。
16. sort 排序命令根据不同数据类型排序
sort -f 忽略大小写差异;
-b 忽略最前面的空格部分;
-M 以月份的名字来排序;
-n 使用纯数字进行排序;
-r 反向排序;
-u 对于相同的数据仅显示一行;
-t 分隔符;
-k 将分割后的数据以哪个区间的值来进行排序;
17. uniq 此命令通常与sort 排序后的数据进行操作,将重复的数据删除并显示一组数据
uniq -i 忽略大小写字符,与sort -f 类似;
-c 对于排序后的数据进行统计计数;
18. wc 对文件中字符、行数、字数进行统计
wc -l 仅列出行;
-w 仅列出多少字;
-m 多少字符;
19. tee 双向重定向命令,该命令会将数据流送到文件存储和屏幕中显示
tee -a 以累加的方式,将数据加入文件中;
tee 单纯使用tee命令,会将存储在文件中的数据覆盖;
20. tr 删除或替换一段信息当中的数据
tr -d '删除内容'
-s 替换重复内容
先整理这么多吧,之后的再慢慢写,一篇文章能写四天我也是汗颜了,知识储备太匮乏了。