目录

linux的登录脚本记录

通过在Linux的启动脚本中添加一些指令,可以实现一些简单的功能,此处记录一下 未来换设备的话能直接使用

打开core文件生成开关

ulimit -c unlimited

这样在程序崩溃之后能够得到core文件,以便通过gdb调试

回收站的实现

windows上面直接删除文件会把文件放到回收站中,以此对手残的用户进行保护

但是linux上面就没有,大概linux的设计哲学是认为用户足够聪明吧(毕竟能使用linux的大概都不是什么电脑小白) 但是每次rm掉重要东西之后,还是会心脏骤停。

所以,使用mv代替rm往往是个好主意

首先先找个位置创建回收站的文件夹,我会直接选在home/.Recycle

使用命令 mkdir .Recycle 创建一个文件夹出来

删除

alias rrm="mkdir -q ~/.Recycle && mv -f -t ~/.Recycle"

不直接重载rm的原因是因为有时候别人的脚本中出现了rm 并且带了参数,但是rmmv的参数并不是一模一样的,这时候就可能出错。所以使用rrm作为删除

mkdir -q中的-q参数是告诉mkdir如果那个位置已经有这个文件了,也不会出现错误。这样只需要复制上面的命令粘贴运行就好了。

查看回收站文件

alias rrl="ls -la ~/.Recycle"

清理回收站

alias rrc="rm -rf ~/.Recycle/* ~/.Recycle/.*"

因为通过rm -rf ~/.Recycle 并不能删除掉.开头的文件,所以需要使用后者专门用来删除,但是会出现找不到. ..的问题,通过重定向错误输出应该可以隐藏这个提示。但是也有可能会忽略别的有用的信息。

统计回收站占用空间

alias rri="du -sh ~/.Recycle"

如此以来,就能实现一个简单的回收站,但凡起作用一次,都是一件值得庆幸的事情。

尽管如此,在使用rm 之前,还是思考一下比较好。

ls命令重载

alias ls="ls --color"

这个一般安装好系统就会有,如果没有--color参数,文件夹就没有颜色

alias ll="ls -lh"

以更科学的方式显示文件大小,并且查看详情信息,还是非常好用的命令,同样的,一些发行版默认就有这个

alias la="ls -lha"

就是比上一条多了显示隐藏文件的功能

超级目录切换

最近修改一个项目,是java的,代码文件足足在六层文件夹包裹之下,每次打开一个新的终端,都会很麻烦,所以,想了一个办法。

保存路径

alias cdc="pwd > ~/.cdc"

执行之后,会在home目录下创建一个隐藏文件,保存当前的工作路径

读取路径

alias cdd="cd \`cat ~/.cdc\`"

这个困扰了我好一会儿,最开始的版本是

alias cdd="cd `cat ~/.cdc`"

但是发现不管cdc保存了什么命令,cdd都只能切换到一个固定的目录,直到无意间执行了alias之后,发现建立的别名是这样的

alias cdd="cd /home/st/"

也就是说,在执行alias的时候,就已经把``里面的东西解释执行了

仅查看自己的进程

公司的服务器上面,并没有root权限,通过ps aux 看到很多进程,但是都不能操作,反而会影响找到有用的进程,所以会考虑只显示自己的进程

alias psu="ps aux | grep \"^`id -u` \""

这样,之后执行psu就只会显示自己的进程了

  • ps aux会显示所有的进程,交给grep过滤
  • id -u将会获取到自己的用户uid
  • ^表示匹配自己uid开头的条目
  • 最后还有一个空格不能少,否则会把包含你uid的别人的进程也显示出来

查看当前目录下文件夹大小

du -h --max-depth=0 *可以弥补ps没有不能直接看到所有文件夹占用大小的问题

另外,通过du -sh ~ 可以看到自己的home目录占用了多少空间

PS1

export PS1="\[\e[31;1m\][\u@\[\e[32;1m\]\h \[\e[32;1m\]\W]\$ \[\e[0m\]"

https://qiniusave.xint.top/mdimage-20210629125123739.png

效果如上图所示