小编Bij*_*ijo的帖子

期望超时,在 Bash 脚本中

如何在以下脚本中为“expect”添加超时?我想将其设置为 120 秒。

#!/bin/bash
HOST="localhost"
USER="myuname"
PASS="mypassword"

VAR=$(expect -c "
spawn ssh $USER@$HOST
expect \"password:\"
send \"$PASS\r\"
expect \"\\\\$\"
send \"ls\r\"
expect -re \"$USER.*\"
send \"logout\"
")

echo "==============="
echo "$VAR"
Run Code Online (Sandbox Code Playgroud)

bash expect

14
推荐指数
2
解决办法
6万
查看次数

脚本中的密码少 sudo

我可以无密码访问服务器。我的用户帐户已添加到sudoers文件中,用于 /etc/init.d/ 中某些服务/守护程序的NOPASSWD使用。

我想根据一些测试结果编写一个脚本来启动或停止一个守护进程。我已经设置了一个 cron 来在特定时间运行这个脚本。但它返回错误“sudo: no tty present and no askpass program specified”。

我可以在终端中使用“ sudo /etc/init.d/service name start/stop而无需密码。我没有root密码。

我已经仔细检查了 /etc/sudoers 文件。没有“要求”。我正在使用 Ubuntu-10.04 、 2.6.32-24-generic。

以下是 sudoers 中的活动行:

Defaults        env_reset
root    ALL=(ALL) ALL
bijo ALL=NOPASSWD: /etc/init.d/apache2
%sudo ALL=(ALL) ALL
%admin ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

scripting sudo cron

4
推荐指数
1
解决办法
6342
查看次数

标签 统计

bash ×1

cron ×1

expect ×1

scripting ×1

sudo ×1