pythonからatコマンドを使う

import subprocess

command = "echo 'touch final.txt' | at now + 10min"

proc = subprocess.Popen(
    command,
    shell  = True,                       
    stdin  = subprocess.PIPE,             
    stdout = subprocess.PIPE,              
    stderr = subprocess.PIPE)               

stdout_data, stderr_data = proc.communicate()


subprocessの使い方がよくわからず,はまってしまいました.
proc.communication()は結果を取得するのが目的で,
subprocess.Popen()の時点でコマンドは実行されます.


やりたい事は現在のatリストをすべて削除して,1つだけ新しいものを挿入して,
その結果を取得します.

import subprocess

command1 = """atq | awk '{print "at -d " $1}' | bash"""
command2 = "echo 'touch final.txt' | at now + 10min"

def exec_command(command):
    return subprocess.Popen(
    command,
    shell  = True,                       
    stdin  = subprocess.PIPE,             
    stdout = subprocess.PIPE,              
    stderr = subprocess.PIPE)               


proc1 = exec_command(command1)
proc2 = exec_command(command2)

stdout_data, stderr_data = proc2.communicate()

print stderr_data