использование tshark с переменной в python [duplicate]

var today = new Date();
var formattedToday = today.toLocaleDateString() + ' ' + today.toLocaleTimeString();
0
задан poke 17 August 2015 в 09:40
поделиться

6 ответов

, тогда я хочу использовать переменную s в os.system

Использовать функцию string.format .

os.system("shutdown -s -t 10 -c {}".format(s))
1
ответ дан Avinash Raj 28 August 2018 в 02:10
поделиться
os.system("shutdown -s -t 10 -c" + s)
  1. Знак плюса соединяет две строки
  2. К s не используются кавычки. Таким образом вы получите значение, введенное пользователем, а не буквальное «s».
-1
ответ дан cxw 28 August 2018 в 02:10
поделиться

Вы можете использовать os.system для выполнения конкретной команды, и в этом случае вы можете присоединиться к двум строкам либо с помощью оператора +, форматирования строки (.format()), либо замены строки, либо какого-либо другого метода.

Однако рассмотрите случай, когда пользователь вводит команду 5; rm -rf / или какую-либо другую вредоносную команду. Вместо использования os.system вы можете взглянуть на подпроцесс

. Если вы используете подпроцесс, вы можете найти следующий пример:

import subprocess
s = raw_input('test>')
subprocess.call(["shutdown", "-s", "-t", "10", "-c", s])
3
ответ дан ilent2 28 August 2018 в 02:10
поделиться

Используйте subprocess.check_call , передайте список аргументов, и вы можете добавить переменную где угодно:

from subprocess import check_call

check_call(["shutdown", some_var ,"-s", "-t" "10", "-c"])
1
ответ дан Padraic Cunningham 28 August 2018 в 02:10
поделиться

os.system принимает в качестве аргумента строку , поэтому вы можете использовать все, что изменяет строку. Например, форматирование строки :

os.system('shutdown -s -t 10 -c {0}'.format(s))
1
ответ дан poke 28 August 2018 в 02:10
поделиться

Пропускающий держатель «% s строка рядом с os.system» должен работать.

os.system () выполнит команду в оболочке.

import os
var = raw_input('test>') # changed "s" variable to "var" to keep clean
os.system("shutdown -%s -t 10 -c", %(var)) # "var" will be passed to %s place holder
0
ответ дан Surya 28 August 2018 в 02:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: