在 su-through 循环中输入密码

在 su-through 循环中输入密码

场景就像我有一个 root 密码列表。但我不想继续手动尝试。所以我写了 shell 脚本:

对于我在 {1..26}

su - >>结果

完毕

我所有的密码都在一个文件中“尝试.txt”。

现在在命令提示符下输入命令:

bash p2.sh < 尝试.txt

但它显示错误:“标准输入必须是 tty”

那么,有没有办法让我通过一些代码或命令输入这些密码,而不用手动输入每个密码?请告诉我一种命令行方法,而不是一些高级实用软件。我是为了学习。谢谢 :)

答案1

正确的语法是这样的:

 while read my_pass
 do 
        echo $my_pass | sudo -S command
 done < file_name

三条评论:您不能使用在脚本文件中,你需要使用须藤-S据该男子说,

-S(stdin)选项使 sudo 从标准输入而不是终端设备读取密码。

其次,如果您不喜欢在脚本中写入file_name,请使用$n个参数之一,例如,如果它是传递的唯一参数,则使用$1。

第三,你确定将所有密码收集到一个未加密的文件中是一个好主意吗?

相关内容