2

这是一个关于 Minecraft 终端脚本的后续问题,该脚本将启动具有 1 GB 内存的服务器,并立即开始一个 30 分钟的循环,该循环将频繁备份服务器地图。

这是我目前正在使用的代码:

cd /Users/userme/Desktop/Minecraft
java -Xmx1024M -Xms1024M -jar minecraft_server.jar & bash -c 'while [ 0 ]; do cp -r /Users/userme/Desktop/Minecraft/world /Users/userme/Desktop/A ;sleep 1800;done' 

现在很明显,这个循环会将备份保存在名为“world”的目录“A”中。是否可以对此代码进行修改,以便它基本上计算脚本进行的循环数量,然后将该计数应用于备份的末尾。例如world5, 或world 12。可以摆脱旧备份的修改也很好。

4

1 回答 1

0

为了更好的可读性,我将其分解为单独的行:

如果你想把它全部放回一行,你可以;在适当的地方添加后面

counter=1
while [ 0 ] 
do 
    if [ -e /Users/userme/Desktop/A/world"$counter" ]; then
        rm -f /Users/userme/Desktop/A/world"$counter"
    fi
    counter=$((counter+1))
    cp -r /Users/userme/Desktop/Minecraft/world /Users/userme/Desktop/A/world"$counter" 
    sleep 1800
done
于 2012-12-13T23:32:38.283 回答