美文网首页
Linux实用小技巧

Linux实用小技巧

作者: 可能性之兽 | 来源:发表于2023-10-15 15:43 被阅读0次

    读取若干个文件,一次性生成markdown

    ls -1tr | xargs -I % sh -c 'echo "## % "; echo "\`\`\` shell"; cat %; echo "\`\`\`"' >../Runlog.md
    

    tee重定向

    要在运行 bash 脚本的同时将输出重定向到日志文件,并且也在终端显示,可以使用 tee 命令。tee 命令读取从 stdin(标准输入)来的数据,并将其写入到一个或多个文件中,同时也将其复制到 stdout(标准输出,即终端或控制台)。

    以下是如何使用 tee 命令来运行脚本并将输出重定向到一个日志文件:

    bash run.sh 2>&1 | tee log.txt
    

    在这个命令中,2>&1 会将 stderr(标准错误)重定向到 stdout,所以 tee 命令会同时接收到 stdout 和 stderr 的所有输出。然后 tee 命令将这些输出写入到 log.txt 文件中,同时也将其复制到终端。

    这样,就可以在终端看到脚本的输出,同时所有的输出也会被保存到 log.txt 文件中。

    多线程方法

    max-procs

    cat id_rep2.txt | xargs -n 1 -I ’{}’ --max-procs 5 sh -c "bwa mem mm10.ref.fa sra2/’{}’_1.fastq sra2/’{}’_2.fastq > sra2/ ’{}’.sam"
    

    wait

     1 #!/bin/bash
     2 date
     3 for i in `seq 1 5`
     4 do
     5 {
     6     echo "sleep 5"
     7     sleep 5
     8 } &
     9 done
    10 wait  ##等待所有子后台进程结束
    11 date
    
    

    linux shell 多线程执行程序 - 旭东的博客 - 博客园 (cnblogs.com)

    相关文章

      网友评论

          本文标题:Linux实用小技巧

          本文链接:https://www.haomeiwen.com/subject/tcpobdtx.html