command教程
命令行教程
工作流,终端复用,dotfile配置,还有远程服务器
2.工作流
ctrl+c是打断程序
ctrl+z是暂停
ctrl+\是结束程序
使用&表示程序后台执行
使用jobs可以查看当前执行的进程状态,
使用bg %1,回复倍暂停的jobs
产生式挂起进程使用nohup
2.tmux
一般使用screen,不过也学习一下
三大核心,session,windows,panel
会话
- 每个会话都是一个独立的工作区,其中包含一个或多个窗口
tmux
开始一个新的会话tmux new -s NAME
以指定名称开始一个新的会话tmux ls
列出当前所有会话- 在
tmux
中输入<C-b> d
,将当前会话分离 tmux a
重新连接最后一个会话。您也可以通过-t
来指定具体的会话
windows==tab(浏览器的窗口)
会话
- 每个会话都是一个独立的工作区,其中包含一个或多个窗口
tmux
开始一个新的会话tmux new -s NAME
以指定名称开始一个新的会话tmux ls
列出当前所有会话- 在
tmux
中输入<C-b> d
,将当前会话分离 tmux a
重新连接最后一个会话。您也可以通过-t
来指定具体的会话
ctrl+a (n,是下一个,p是之前一个tmux窗口
3.重命名
alias把长命令进行缩短
alias gc=“git clone”
如何写入重命名,关闭终端,重命名就结束了
直接写入到dotfiles
4.符号链接
就是和快捷方式一样
5.ssh
这个已经熟练了
、
还有设置别名,在ssh里面进行配置,就不用一个刚刚输入IP了
6.homework
6.1任务控制
这一题使用的pger==ps aux|grep python
pgrep python
使用prep sleep可以得到
1 | sleep 10000 |
如果您希望某个进程结束后再开始另外一个进程, 应该如何实现呢?在这个练习中,我们使用
sleep 60 &
作为先执行的程序。一种方法是使用wait
命令。尝试启动这个休眠命令,然后待其结束后再执行ls
命令。但是,如果我们在不同的 bash 会话中进行操作,则上述方法就不起作用了。因为
wait
只能对子进程起作用。之前我们没有提过的一个特性是,kill
命令成功退出时其状态码为 0 ,其他状态则是非0。kill -0
则不会发送信号,但是会在进程不存在时返回一个不为0的状态码。请编写一个 bash 函数pidwait
,它接受一个 pid 作为输入参数,然后一直等待直到该进程结束。您需要使用sleep
来避免浪费 CPU 性能。