5 种方法重复执行历史命令
原创
5种方法重复执行历史命令
在Linux和Unix系统中,历史命令的重复执行是一个常见的需求。以下介绍了五种不同的方法来实现这一功能。
方法一:使用历史命令编号
当你在终端中输入命令后,按下回车键,命令会被保存到历史命令列表中。你可以通过按下向上的箭头键(↑)来重复执行之前的命令。
例如,如果你输入了以下命令:
ls -l
然后想要再次执行这个命令,你可以按下向上的箭头键,终端会自动填充之前的命令,再次按下回车键即可执行。
方法二:使用Ctrl+R
Ctrl+R是一个有力的搜索历史命令的功能。当你按下这个组合键后,终端会进入搜索模式,你可以输入关键字来搜索历史命令。
例如,如果你想再次执行某个包含“file”的命令,你可以按下Ctrl+R,然后输入“file”,终端会显示所有包含“file”的命令,你可以使用上下箭头键选择并执行。
方法三:使用!命令编号
除了使用历史命令编号,你还可以使用感叹号(!)加上命令编号来重复执行历史命令。
例如,如果你的历史命令编号是123,你可以输入!123来执行编号为123的命令。
!123
方法四:使用历史命令搜索并执行
你可以使用历史命令的搜索功能来找到你想要重复执行的命令,然后使用回车键来执行。
例如,如果你想找到最近执行过的“ls -l”命令,你可以输入以下命令:
ls -l | grep 'ls -l' | head -n 1 | xargs -0
这个命令首先使用grep来搜索包含“ls -l”的命令,然后使用head -n 1来获取第一行最终,最后使用xargs -0来执行这个命令。
方法五:编写脚本或函数
如果你常常需要重复执行某个命令,可以考虑将其编写成一个脚本或函数,以便迅速调用。
以下是一个明了的bash脚本示例,它将重复执行一个命令:
#!/bin/bash
while true; do
echo "输入'exit'退出,输入其他任意键重复执行命令:"
read command
if [ "$command" = "exit" ]; then
break
else
echo "执行命令:$command"
$command
fi
done
保存这个脚本到文件中,例如“repeat.sh”,然后给予执行权限并运行它。
chmod +x repeat.sh
./repeat.sh
通过以上五种方法,你可以轻松地在Linux和Unix系统中重复执行历史命令,减成本时间工作效能。