我正在嘗試編寫一個腳本,該腳本需要時間和進程名稱並將它們傳遞給 at 來安排作業。我無法發送 EOT。
#! /usr/bin/expect
# Usage: setupkill.exp time process.
# press ctrl-D to finish the at command.
set time [lindex $argv 0]
set process [lindex $argv 1]
spawn at $time
expect "at>"
send "/home/jagan/p/killprocess $process\r";
expect "at>"
send "^D";
interact
該腳本旨在給定時間終止特定進程。
答案1
您可以像這樣發送 ctrl-D:send "\004"
答案2
您可以使用簡單的 shell 腳本:
#! /bin/sh
# Usage: setupkill.sh time process.
echo /home/jagan/p/killprocess "$2" | at "$1"
(抱歉,我不知道,expect
所以這只是一個簡單的解決方法。)