代码之家  ›  专栏  ›  技术社区  ›  Yotam

如何在bash脚本中使用du-sh

  •  0
  • Yotam  · 技术社区  · 12 年前

    我想在校园的HPC上为我的工作文件创建一个保管员。如果我的磁盘使用量超过50GB,我希望停止所有作业(并可能收到一封关于此的电子邮件)。我想做的是这样的事情:

    #!/bin/bash
    
    run=1
    while [ $run -gt 0 ]; do
      a=du -sh ~
      if [ $a -gt 50GB ]; then
        run=0
        break
      fi
    done
    
    qdel j*fd
    qdel j*fd
    #send email in some way
    

    我陷入了两件事:

    1. 我不能在脚本中使用du-sh,我得到了一个错误:

      -sh:找不到命令

    2. 我不知道如何比较尺寸。

    我怎样才能做到这一点?

    1 回复  |  直到 12 年前
        1
  •  1
  •   Nahuel Fouilleul    12 年前
    1. a=$(du_command) a=du -sh ~ 相当于 -sh ~ 具有环境变量 a=du

    2. 比较大小(kb): a=$(du -sk ~ | awk '{print$1}') 和[${a}-gt 51200]