linux清除今天所有命令

worktile 其他 11

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    要清除Linux系统中今天执行过的所有命令,你可以使用shell命令历史记录功能以及一些特定的命令来实现。

    首先,你可以通过运行以下命令来查看所有历史记录:
    “`shell
    history
    “`
    这个命令将显示所有执行过的命令的列表,包括每个命令前面的编号。

    然后,你可以使用以下命令将历史记录保存到文件中:
    “`shell
    history > history.txt
    “`
    这个命令将将历史记录输出到一个名为”history.txt”的文件中。

    接着,你可以使用以下命令来筛选并删除今天执行过的命令:
    “`shell
    cat history.txt | grep $(date +”%Y-%m-%d”) | awk ‘{$1=””; print$0}’ | sort | uniq | history -d
    “`
    这个命令将首先从”history.txt”文件中筛选出今天执行过的命令,并将其删除。

    最后,你可以使用以下命令来将更新后的历史记录重新载入到shell中:
    “`shell
    history -r
    “`
    这个命令将重新加载历史记录,让你的shell会话中只包含现在的命令。

    请注意,执行这些命令前,请务必确认你真的想要删除今天执行过的所有命令,并且你已经备份了重要的命令历史记录。以免出现错误导致数据丢失。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    要清除今天所有的命令,可以使用以下方法:

    1. 使用`history`命令查看今天所有执行过的命令。可以通过输入`history`命令来查看系统中所有的命令历史记录。记录会按照时间顺序显示,最新的命令在列表的末尾。

    2. 使用`grep`命令过滤出今天的命令。通过将`history`命令的输出通过管道传给`grep`命令,可以将历史命令列表中只显示今天执行的命令。例如,使用以下命令可以只显示今天的命令历史记录:
    “`
    history | grep “$(date +’%Y-%m-%d’)”
    “`

    3. 删除单个命令。如果要删除特定的命令,可以使用`history -d`命令来删除指定的命令。例如,要删除历史记录中的第10个命令,可以运行以下命令:
    “`
    history -d 10
    “`

    4. 清空全部历史记录。如果要完全清除所有的命令历史记录,可以使用`history -c`命令来清空整个历史记录。这样在下次重新登录之后,命令历史记录将会重新开始。

    5. 设置历史记录保存数量。默认情况下,Linux系统会将最近执行的1000个命令保存在历史记录中。如果希望增加或减少保存的数量,可以在`~/.bashrc`文件中修改`HISTSIZE`变量的值。例如,将保存的命令数量增加到2000个,可以将以下行添加到`~/.bashrc`文件中:
    “`
    export HISTSIZE=2000
    “`

    总结:
    要清除今天所有的命令,可以使用`history`命令查看并删除特定的命令,或者使用`history -c`命令清空整个命令历史记录。此外,还可以使用`grep`命令过滤出今天的命令,或者通过设置`HISTSIZE`变量来控制保存的命令数量。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux系统中,如果你想清除今天所有执行过的命令,你可以使用以下方法:

    1. 使用`history`命令查看今天执行过的所有命令:

    “`bash
    history
    “`

    这将会列出你在当前会话中执行过的所有命令,包括命令的编号和具体内容。

    2. 使用`grep`命令筛选出今天执行的命令:

    “`bash
    history | grep $(date +%Y-%m-%d)
    “`

    这会显示出今天执行的所有命令。`$(date +%Y-%m-%d)`部分会将当前日期作为参数传递给`grep`命令,用来筛选出包含今天日期的命令。

    3. 使用`awk`命令提取出命令编号:

    “`bash
    history | grep $(date +%Y-%m-%d) | awk ‘{print $1}’
    “`

    这会显示出今天执行的命令的编号。

    4. 使用`history -d`命令删除指定编号的命令(注意:这会删除该命令在历史记录中的所有实例):

    “`bash
    history -d 命令编号
    “`

    将`命令编号`替换为你想删除的命令的编号。

    5. 循环删除所有今天执行的命令:

    “`bash
    for cmd in $(history | grep $(date +%Y-%m-%d) | awk ‘{print $1}’); do history -d $cmd; done
    “`

    这个命令会循环遍历所有今天执行的命令,并使用`history -d`命令进行删除。

    请注意,这个方法只会删除在当前会话中执行的命令,不会影响到其他会话或重新登录后的命令历史记录。若您需要清除历史命令记录,可以尝试以下方法:

    1. 手动编辑用户的历史命令记录文件:

    “`bash
    vi ~/.bash_history
    “`

    这个命令会使用vi编辑器打开当前用户的历史命令记录文件。你可以删除文件中的所有内容,或者删除指定日期的历史命令记录。

    2. 使用`history -c`命令清除当前会话的所有历史命令记录:

    “`bash
    history -c
    “`

    这个命令会清除当前会话的历史命令记录,但不会影响到其他会话或重新登录后的记录。

    3. 永久关闭历史命令记录功能:

    “`bash
    echo “unset HISTFILE” >> ~/.bashrc
    source ~/.bashrc
    “`

    这个方法会在用户的bash配置文件(.bashrc)中添加一行命令,来关闭历史命令记录功能。运行`source ~/.bashrc`命令使配置文件生效。

    请注意,以上操作会永久删除或关闭历史命令记录,这意味着你将无法再查看之前的命令记录。请谨慎操作。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部