screen
借助screen工具即可,其相当于一个窗口管理器。用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
具体说来,有以下方式创建窗口:
- 直接输入screen命令
2. Screen+要执行的代码
常用的screen参数如下:
screen -S yourname -> 新建一个叫yourname的session
screen -ls -> 列出当前所有的session
screen -r yourname -> 回到yourname这个session
screen -d yourname -> 远程detach某个session
screen -d -r yourname -> 结束当前session并回到yourname这个session
还有一些快捷键,就是C-a(ctrl + a)配合其它命令:
C-a k -> kill window,强行关闭当前的 window(或者输入exit)
C-a d -> detach,暂时离开当前session,将目前的 screen session (可能含有多个 windows) 丢到后台执行,并会回到还没进 screen 时的状态,此时在 screen session 里,每个 window 内运行的 process (无论是前台/后台)都在继续执行,即使 logout 也不影响。
C-a w -> 显示所有窗口列表。
C-a n -> Next,切换到下一个 window
C-a p -> Previous,切换到前一个 window
C-a 0..9 -> 切换到第 0..9 个 window
parallel
并行执行程序除了可以用&讲程序放到后台执行,还可以用parallel工具。
GNU parallel 可以确保程序的输出和顺序输出时结果一致。
简单使用可以直接用重定向运算符:
parallel < command.sh
更多参考文档 。
cron
basic terminology:
- cron(8) is the daemon that executes scheduled commands.
- crontab(1) is the program used to modify user crontab(5) files.
- crontab(5) is a per user file that contains instructions for cron(8).
Each entry in a crontab file consists of six fields, specifying in the following order:
minute(s) hour(s) day(s) month(s) weekday(s) command(s)
bz2文件压缩解压
压缩bzip2 -z fileName解压bzip2 -d fileName.bz2bunzip2 fileName
默认在压缩解压完成后会删除源文件,可以用 -k 保留。
