gpt4 book ai didi

linux - 记录成功的命令

转载 作者:行者123 更新时间:2023-12-05 06:00:11 25 4
gpt4 key购买 nike

所以,我对编写脚本真的很陌生,但真的很喜欢它。对于我目前正在类的类(class),讲师要求我们提供我们在实验室中使用的所有命令的日志文件。到目前为止,我一直在做 history > file.txt。对我来说,该方法的问题在于它还记录了我的大量拼写错误。我可以继续这样做,因为它根本不会影响我的成绩,但我渴望尽可能多地学习。

无论如何,我希望能想出一些东西来整理和记录我执行的成功命令。我写了一个脚本,有点这样做,但它花费了我很多功能。我希望得到一些帮助,为我指明正确的方向。

#!/bin/bash

logger(){
read usr_command
$usr_command
exit_code=$?
if [ "$exit_code" -eq 0 ]; then
echo "yea"
else
echo "nah"
fi
}

while true; do

logger

done

显然,我需要编写指令,以便在分析命令后将它们传递给文件,但我真正想要的是一种无需通过 read 传递命令即可执行此操作的方法。我似乎无法让脚本识别我想要的命令的退出代码,因为每次它运行时它只会捕获执行脚本的成功命令。

在此先感谢您查看我的业余技能,如果我浪费了任何人的时间,我深表歉意。

最佳答案

关于丢失的功能,类似于 rl-wrap可能有帮助。

无需创建自己的 REPL,您可以像这样为每个命令添加一个函数调用:

ok() {
"$@"
test $? -eq 0 && echo "$*" >> successful-commands.txt
}

ok true # logged
ok false # not logged

这样,你的问题就类似于:

关于linux - 记录成功的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67815691/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com