在服务器上批处理提取thickness——<freesurfer>


linux服务器上的简单命令:

ssh node01  跳转到node01节点下面

top  查看该节点下的资源占用情况

nohup   用途:不挂断地运行命令。

             语法:nohup Command [ Arg ... ] [ & ]
             描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

              操作系统中有三个常用的流:
               0:标准输入流 stdin
              1:标准输出流 stdout
              2:标准错误流 stderr              一般当我们用 > console.txt,实际是 1>console.txt的省略用法;< console.txt ,实际是 0 < console.txt的省略用法   基本思想;给服务器每个节点下面分配一部分被试,并在后台运行   步骤: 1.提取皮层厚度的基本代码:

【recon-all -subjid sub_1014 -sd /home/Biswal/output2 -i /home/Biswal/data/sub_1014/sub_1014HC_coliqiping.img -all

recon-all -s sub_1014 -sd /home/Biswal/output2 -qcache】

sub_1014 ——指的是subject的id

-sd ——指的是subjects_dir ,生成文件的输出路径

-i ——指的是input

2.有n多个被试,就复制n多个上述代码,根据需求(需要用服务器几个核跑)来divide所有的代码

  Run_FS_node01_core1.txt                                                                                                      Run_FS_node01_core1.sh 

  Run_FS_node01_core2.txt                                                                                                      Run_FS_node01_core2.sh 

  Run_FS_node02_core1.txt           调用了3个节点,每个节点2个core,一共分成6份                Run_FS_node02_core1.sh     

  Run_FS_node02_core2.txt           再将后缀由txt改为sh                                                           Run_FS_node02_core2.sh

  Run_FS_node03_core1.txt                                                                                                       Run_FS_node03_core1.sh

  Run_FS_node03_core2.txt                                                                                                      Run_FS_node03_core2.sh

然后放到服务器里的相应文件夹下 

3.在终端里的node01下,逐行输入以下代码

chmod u+x /home/Biswal/code2/Run_FS_node01_core1.sh

nohup ~/code2/Run_FS_node01_core1.sh > /home/Biswal/Junks2/1_1.txt 2>&1 &

chmod u+x /home/Biswal/code2/Run_FS_node01_core2.sh

nohup ~/code2/Run_FS_node01_core2.sh > /home/Biswal/Junks2/1_2.txt 2>&1 &

在node02和node03输入同样的对应的代码