linux历史命令记录在哪个文件里linux的历史命令

哈,你想清空Linux的历史命令啊?行,这事儿挺多方法,看你想清干净到什么程度。

你想立刻清空当前屏幕上显示的历史记录,就输入 history -c。
这个命令执行完,你再用 history 查看一下,屏幕上空空如也,已经输入的命令就看不到了。
但注意,这只清屏幕,历史记录文件本身还在。

如果你想把当前用户的全部历史记录都干掉,永久不留,那得动真格的。
最直接的办法是直接把历史文件给清空或者删除。
这个文件一般在用户家目录下的 .bash_history。
你可以用命令 echo > /root/.bash_history。
这里的 > 号是个重定向符号,意思是把标准输出(空行,因为 echo 后面啥都没跟)写入到 /root/.bash_history 这个文件里,如果文件存在,它会先把文件内容清空再写入。
简单说,这就相当于把历史文件内容全删光了。

还有一种思路,是从根源上不让系统记录历史。
你可以去编辑 /etc/profile 这个文件。
用 vim /etc/profile 打开它(如果你用别的编辑器也行)。
在里面找到 HISTSIZE 这个设置,默认值一般是个数字,比如 HISTSIZE=1 000,意思就是系统会保存你最近输入的1 000条命令。
你直接把这个值改成 0 或者 1 ,保存文件退出。
这样,从现在开始,你每次执行命令,系统都不会保存到历史记录里了。
不过,这个设置是全局的,对所有登录这个用户的操作都会生效。
而且,如果你用 history -c 或 echo > .bash_history 清空过历史,这个设置可能也没用,因为历史文件可能已经被清空了。
想完全禁止,可能还需要关掉 HISTFILE 这个变量,或者确保 PROMPT_COMMAND 不包含调用 history 的命令。

还有个 history -w 命令,这个是让你把内存里的历史记录立刻写回到历史文件里。
比如你临时修改了点什么,用 -w 保存一下。
但这个跟删除历史记录没关系,是反向操作。

所以总结一下: 1 . 想清屏幕上的历史?history -c。
2 . 想清全部历史记录(永久)?echo > /path/to/.bash_history (比如 /root/.bash_history)。
3 . 想让系统以后不再保存历史?改 /etc/profile 里的 HISTSIZE=1 000 成 0 或 1
你具体想用哪种方法?看你需求。
是想快速清屏,还是想彻底抹掉?

Linux常用命令之四(其他)

结论: 1 . Linux历史命令:history列出命令,!n执行第n条,!!重复上一条,!string执行以string开头的命令。
2 . 系统变量:/etc/profile全局,~/.bashrc或~/.bash_profile用户级,echo$PATH查看,export临时修改,source永久生效。
3 . 正则表达式:grep搜索文件,基础用法grep"string"文件,高级如grep-n'[^g]oo'ab.c。
4 . 条件表达式:if...fi用于脚本逻辑,文件测试、字符串比较、数值比较。
5 . 循环:while...do...done重复执行,如count=1 while[$count-le5 ];doecho"Count:$count"count=$((count+1 ))done。
6 . 编译执行:gcc编译C程序,./运行可执行文件,确保可执行权限。

linux shell 内置命令的作用,存放在哪里

这5 0多bash内置命令,主要在/sbin、/bin、/usr/bin,想查具体命令,直接上Linux命令大全。