否则,如果循环命令取决于结果字符串

时间:2017-08-14 13:28:50

标签: bash shell loops

我正在尝试让脚本接受参数并对其运行命令,并在结果与某个字符串匹配时重试该命令。否则其他结果将回应结果。

我们有一个脚本正在运行,我们运行"rm <filename>"但是返回是否成功需要5秒钟,我想制作一个脚本来继续运行它,直到它看到一个&#34;被破坏的文件&# 34;结果中的字符串。

这是我到目前为止所拥有的......

#!/bin/bash

function rm () {

if [[ $(rm $1 | grep -m 1 'destroyed file') ]]  ; then
        echo "Destroyed File"
elif [[ $(rm $1 | grep -m 1 'remove failed') ]] ; then
        sleep 5;
        rm $1
elif [[ $(rm $1 | grep -m 1 'not found') ]] ; then
        echo "file not found"
elif [[ $(rm $1 | grep -m 1 'You must have root access') ]] ; then
        echo "You do not have root access"
else
        echo "Incorrect parameter or command"
fi
}

0 个答案:

没有答案