cron批量定时训练任务/tmux多窗口操作

 一、cron

在 bash 中可以使用循环和命令替换来实现批量训练任务,通过cron实现定时。

打开终端,输入crontab -e来编辑当前用户的cron任务列表,

* * * * * command

 从左往右分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(1-12)、星期(0-7)、命令,比如上面就表示“每一分钟执行一次命令”

0 2 * * * command

表示每天凌晨两点执行一次命令

0,15,30,45 * * * * command

 表示每十五分钟执行一次命令

0-15 * * * * command

表示每小时的前15分钟执行一次命令

*/5 * * * * command

表示每五分钟执行一次命令

以此类推...

cron的输出通常会发送邮件给用户。如果不需要邮件通知,可以在任务中重定向输出

  0 2 * * * python /path/to/train_script1.py > /dev/null 2>&1

以下是一个使用 Bash 实现定时批量处理数据的实例:

有多个数据集,分别存放在不同的目录中,并且有一个训练脚本train_model.py,可以接受数据集的路径作为参数进行模型训练。

1.创建一个名为process_data.sh的 Bash 脚本:

   #!/bin/bash

   datasets_directory="/path/to/datasets_directory"
   output_directory="/path/to/output_directory"

   for dataset_folder in "$datasets_directory"/*; do
       if [ -d "$dataset_folder" ]; then
           dataset_name=$(basename "$dataset_folder")
           output_file="$output_directory/${dataset_name}_model_output.txt"
           python train_model.py "$dataset_folder" > "$output_file"
       fi
   done

2.赋予脚本执行权限:

chmod +x process_data.sh

3.设置cron任务

        1.打开终端,输入crontab -e来编辑当前用户的cron任务列表。

        2.在打开的编辑器中输入:

 0 3 * * * /path/to/process_data.sh

这样每天三点脚本就会自动执行。

二、tmux

tmux可以创建多个会话,每个会话可以包含多个窗口和窗格,用户可以随时断开与tmux会话的连接,并在以后重新连接,而不会丢失任何正在运行的任务。这对于远程登录和长时间运行的任务非常有用

启动tmux会话:Linux终端键入tmux

查询会话:tmux ls

创建新窗口:会话中按下ctrl+b,然后按c

查询窗口:ctrl+b然后w

窗口切换:ctrl+b然后键入窗口编号

划分窗格:ctrl+b然后%,当前窗口垂直划分成两个窗格;ctrl+b然后",当前窗口水平划分两个窗格,ctrl+b然后方向键切换窗格

断开会话:ctrl+b然后d

重连会话:终端输入tmux attach -t name

会话、窗口、窗格的关系:

会话:

        看作是一个独立的工作环境,一个会话通常包含一个或多个窗口,以及与之相关的各种配置和状态信息

        持久性:即使你断开终端连接或关闭终端窗口,会话及其内部的窗口和窗格仍然在后台运行,不会丢失任何正在进行的任务或状态。当你重新连接时,可以恢复到离开时的状态

        独立性:每个会话都有自己独立的环境,可以有不同的窗口布局、运行的命令和程序等

窗口:

        窗口是会话中的一个独立视图,每个窗口可以运行不同的命令或程序。一个会话可以包含多个窗口,它们共享同一个会话的资源和环境

        

窗格:

        可以在一个窗口中同时查看和操作多个任务

作用:

1.当通过 SSH 连接到远程服务器时,使用tmux可以确保即使网络连接中断,正在运行的任务也不会被中断。用户可以在重新连接后继续操作

2.在开发过程中,可能需要同时运行多个命令行工具,如编译器、调试器、服务器等。使用tmux可以将这些工具分别放在不同的窗格中,方便同时查看和操作

3.如果有一个需要长时间运行的任务,如数据处理、模型训练等,可以使用tmux将该任务放在一个单独的会话中,然后断开连接。这样可以释放本地终端资源,并且在需要时可以重新连接查看任务进度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值