hash命令 – 显示与清除命令运行时查询的哈希表

hash命令负责显示与清除命令运行时系统优先查询的哈希表(hash table)。

当执行hash命令不指定参数或标志时,hash命令向标准输出报告路径名列表的内容。此报告含有先前hash命令调用找到的当前shell环境中命令的路径名。而且还包含通过正常命令搜索进程调用并找到的那些命令。

语法格式: hash [参数] [目录]

常用参数:

-d    在哈希表中清除记录
-l    显示哈希表中的命令
-p<指令>    将具有完整路径的命令加入到哈希表中
-r    清除哈希表中的记录
-t    显示哈希表中命令的完整路径

参考实例

显示哈希表中的命令:

[root@linuxcool ~]# hash -l 

删除哈希表中的命令:

[root@linuxcool ~]# hash -r 

向哈希表中添加命令:

[root@linuxcool ~]# hash -p /usr/sbin/adduser myadduser 

在哈希表中清除记录:

[root@linuxcool ~]# hash -d

显示哈希表中命令的完整路径:

[root@linuxcool ~]# hash -t

bc命令 – 浮点运算

bc的英文全拼为“ Binary Calculator ”,是一种支持任意精度的交互执行的计算器语言。bash内置了对整数四则运算的支持,但是并不支持浮点运算,而bc命令可以很方便的进行浮点运算,当然整数运算也不再话下。

语法格式:bc [选项]

常用参数:

-i    强制进入交互式模式
-l    定义使用的标准数学库
-w    定义使用的标准数学库
-q    打印正常的GNU bc环境信息

参考实例

算术操作高级运算bc命令它可以执行浮点运算和一些高级函数:

[root@linuxcool ~]# echo "1.212*3" | bc 
 3.636

设定小数精度(数值范围):

[root@linuxcool ~]# echo "scale=2;3/8" | bc
 .37

计算平方和平方根:

[root@linuxcool ~]# echo "10^10" | bc
 10000000000
[root@linuxcool ~]# echo "sqrt(100)" | bc
 10

wait命令 – 等待指令

wait命令用来等待指令的指令,直到其执行完毕后返回终端。该指令常用于shell脚本编程中,待指定的指令执行完成后,才会继续执行后面的任务。该指令等待作业时,在作业标识号前必须添加备份号”%”。

语法格式:wait [参数]

常用参数:

22 或%1    进程号 或 作业号

参考实例

等待作业号为1的作业完成后再返回:

[root@linuxcool ~]# wait %1
[root@linuxcool ~]# find / -name password

rmmod命令 – 删除模块

rmmod即“remove module”的简称,rmmod命令用于删除模块。 执行rmmod命令,可删除不需要的模块。Linux操作系统的核心具有模块化的特性,因此在编译核心时,不需要吧全部功能都放入核心,可以将这些功能编译成一个个单独的模块,待有需要时再分别载入它们。

语法格式:rmmod [参数] [模块名称]

常用参数:

-a    删除所有目前不需要的模块
-s    把信息输出至syslog常驻服务,而非终端机界面
-v    显示指令执行的详细信息
-f    强制移除模块,使用此选项比较危险
-w    等待着,知道模块能够被除时再移除模块

参考实例

卸载模块pppoe并显示执行信息:

[root@linuxcool ~]# rmmod -v pppoe

卸载bridge模块:

[root@linuxcool ~]# rmmod bridge

卸载bridge模块并将错误信息写入syslog:

[root@linuxcool ~]# rmmod -s bridge

孤立正在使用的bridge模块,知道不被使用:

[root@linuxcool ~]# rmmod -w bridge

删除正在使用的bridge模块(-f可以删除正在使用的模块,非常危险,慎用):

[root@linuxcool ~]# rmmod -f bridge

history命令 – 显示与操纵历史命令

history命令用于显示用户以前执行过的历史命令,并且能对历史命令进行追加和删除等操作。

如果你经常使用Linux命令,那么使用history命令可以有效地提升你的效率。

语法格式: history [参数] [目录]

常用参数:

-a    将当前shell会话的历史命令追加到命令历史文件中,命令历史文件是保存历史命令的配置文件
-c    清空当前历史命令列表
-d    删除历史命令列表中指定序号的命令
-n    从命令历史文件中读取本次Shell会话开始时没有读取的历史命令
-r    读取命令历史文件到当前的Shell历史命令内存缓冲区
-s    将指定的命令作为单独的条目加入命令历史内存缓冲区。在执行添加之前先删除命令历史内存缓冲区中最后一条命令
-w    把当前的shell历史命令内存缓冲区的内容写入命令历史文件

参考实例

显示最近的10条命令:

[root@linuxcool ~]# history 10  

将本次登录的命令写入历史文件中:

[root@linuxcool ~]# history -w

将命令历史文件中的内容读入到目前shell的history记忆中 :

[root@linuxcool ~]# history -r  

将当前Shell会话的历史命令追加到命令历史文件中:

[root@linuxcool ~]# history -a  

清空当前历史命令列表:

[root@linuxcool ~]# history -c 
Last modification:December 29, 2021
If you think my article is useful to you, please feel free to appreciate