Я использую эту команду для вставки переменной:
`os.system("sudo insmod /home/hajer/final_module/module.ko src_ip=" +(R1.get()))`
, и она работает нормально, но когда я добавляю другие переменные, кажется, что она не работает и Я не вставляю переменные.
os.system("sudo insmod /home/hajer/final_module/module.ko src_ip=" +(R1.get())+ "delay=" +(R2.get())+ "tcp_port=" +(R3.get()))
Лучшая вещь в этих случаях состоит в том, чтобы только распечатать строку перед использованием его так, Вы видите, корректно ли все.
command = "sudo insmod /home/hajer/final_module/module.ko src_ip=" +(R1.get())+ "delay=" +(R2.get())+ "tcp_port=" +(R3.get())
print(command)
os.system(command)
Мое предположение, Вы пропускаете пространство перед delay
и tcp_port
параметры.
command = "sudo insmod /home/hajer/final_module/module.ko src_ip=" +(R1.get())+ " delay=" +(R2.get())+ " tcp_port=" +(R3.get())
Затем очищают вещи немного:
command = "sudo insmod /home/hajer/final_module/module.ko src_ip=%s delay=%s tcp_port=%s" % (R1.get(), R2.get(), R3.get())
Также os.system
удерживается от использования, необходимо использовать subprocess
модуль вместо этого.