alias自定义指令:
适用场景:想要替换某个长长的指令/设置指令的别名
步骤:
① vim .bashrc
进入用户配置文件
② 在 # <<< conda initialize <<<
下方添加想要替换的命令,如alias nv="watch -n .1 -d nvidia-smi"
就是用nv替换后面那一堆表达式。
③ 按下esc键后输入冒号和wq键 保存并退出。
④ 试一下输入nvv,就出来这个界面啦:
tmux保持会话:
阮一峰博客
适用场景:想要会话一直开启,关机断电都不会断,可以替代nohup命令
指令:
tmux
打开一个session
或者 tmux new -s <session-name>
就可以给session取名字了
exit
退出当前会话(后台也没有了),ctrl+d
也是同样的意思
ctrl+b
+d
或者tmux detacha
:将当前会话与窗口分离,也就是这个会话一直保持在后台,悄悄运行着。
ctrl+b [
可以查看所有会话(可以滑动鼠标查看上下文命令),想退出就按q
tmux ls
查看当前还有哪些会话
tmux a -t 0
或者tmux attach -t <session-name>
:重新接入某个已存在的会话0
tmux kill-session -t <session-name>
杀死会话
htop查看CPU占用率:
适用场景:动态查看CPU占用率
用于替代top命令,默认支持图形界面的鼠标操作,可以横向或纵向滚动浏览进程列表,以便看到所有的进程和完整的命令行,杀进程时不需要输入进程号。
ps -aux | grep wangshiqi |cut -c 9-16
:显示wangshiqi的所有进程
ps -aux | grep CIRS-env14 |cut -c 9-16 | xargs kill
:杀死关键词里包含"CIRS-env14"的所有进程
Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
ps -aux 显示所有包含其他使用者的行程
Linux grep 命令用于查找文件里符合条件的字符串。
Linux cut命令用于显示每行从开头算起 num1 到 num2 的文字。 -c :以字符为单位进行分割。
gpustat 查看GPU使用率:
适用场景:想看看究竟是谁占了gpu,可以替代nvidia-smi
命令
① pip install gpustat
就可以安装案例
② watch --color -n1 gpustat -cpu
就可以动态实时监控 GPU 的使用情况啦
zsh 终端:
- 可以把它理解成一个 花里胡哨+功能丰富 的命令行终端(高阶版bash)
- 拥有多种风格主题(可通过
ZSH_THEME="样式名称"
更换)and 各种高级功能(自动补全…)
首先需要下载zsh,网上有很多教程,搜一搜就好了~
以下是我总结的一些常用操作:
- 进入文件夹不用输入cd命令,直接输入文件夹名字就好了。即用
test
命令替换cd test
,..
替换cd ..
超级方便! - 强大的历史记录功能,输入
git
然后用上下箭头就可以查阅所有以git开头的命令! - 智能跳转(需要安装autojump),可以记录所有访问过的目录,通过
j+name
可以直接进行目录跳转,不需要一级一级进入啦 - Tab补齐功能很实用,输入首字母
a
,按Tab,就会显示所有以a开头的文件 - 自带很多别名,这个需要慢慢研究
- 如果想退出到bash,直接输入
bash
就好啦~ 同理,如果想从bash进入到zsh,在命令行输入zsh
就好了。
其他小技巧
- 使用curl替代ping命令。ping命令用来测试主机之间网络的连通性,curl是发出 GET 请求,服务器返回的内容会在命令行输出。
- 使用github DeskTop管理代码
- 安装了zsh之后,发现如果激活环境
conda activate base
,退出终端没有conda deactivate
,就会报错“You may need to close and restart your shell after running ‘conda init’.” 只能source deactivate
。这是因为.zshrc
文件中没有conda initialize
的信息,需要在命令行输入conda init zsh
自动初始化,就可以啦~ pkill -u wangshiqi
可以一次性杀死user为wangshiqi的所有进程