Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
3 / 3 / 1
Регистрация: 13.05.2019
Сообщений: 49

Скрыть результаты процесса в консоли

22.07.2022, 15:44. Показов 3488. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не знаю, правильно задал вопрос в описании или нет. В гугле не забанили, время ограничено, не приходит в голову правильно сформированный запрос. В общем, ниже дан (недо)скрипт на Python, который выводит информации о памяти в терминале Linux.

Можно ли сделать так, чтобы вместо информации о памяти (пример на скрине) вывести другую фразу, например "Выполнено"? при этом информация о памяти выводилась выбранная мной инфа?



Python
1
2
3
4
5
6
7
8
import os
 
while True:
        print("1. Вывести информацию о памяти")
        cmd = input("Выберите пункт: ")
        if cmd == "1":
                view_cpu = "free" #вывод информации о процессоре
                os.system(view_cpu)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.07.2022, 15:44
Ответы с готовыми решениями:

Скрыть курсор в консоли при изменение размеров консоли
Похожая тема для C++ тут. В шарпе скрыть курсор в консоли - легко Console.CursorVisible = false; Вопрос вот в чем,...

Возможно скрыть нагрузку процесса/потока на ЦП?
По поиску и книгам не нашел. Скрыл процесс в DKOM - соотв. процесса в списке диспетчера нет, но нагрузка на ЦП отображается(в % общей...

Скрыть папку в консоли
Есть необходимость сделать некоторые папки скрытыми в директиве /home. Для этого в директиве /home я создала файл .hidder и туда записала...

21
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
22.07.2022, 16:03
это вы писали? в чем проблема понять не могу.
Цитата Сообщение от Wandersmann Посмотреть сообщение
Можно ли сделать так, чтобы вместо информации о памяти (пример на скрине) вывести другую фразу, например "Выполнено"?
ну напишите принт
1
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
22.07.2022, 16:09
Цитата Сообщение от Wandersmann Посмотреть сообщение
при этом информация о памяти выводилась выбранная мной инфа?
смысл этой фразу раз за разом ускользает от меня
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.07.2022, 16:17
Jabbson, я так понял, выхлоп консоли надо в переменную.

Добавлено через 30 секунд

Не по теме:

Это не про вышеуказанную фразу, а в общем )))

0
3 / 3 / 1
Регистрация: 13.05.2019
Сообщений: 49
22.07.2022, 16:18  [ТС]
Да, сорян, второпях писал)))
Я имел в виду, чтобы ВМЕСТО вывода всей информации о памяти выводилось выбранное значение? Другими словами, можно ли из всего массива данных, выведенных командой "free" в консоли, выбрать именно то, что мне нужно и добавить свою фразу?
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
22.07.2022, 16:21
Цитата Сообщение от Wandersmann Посмотреть сообщение
Да, сорян, второпях писал)))
это понятно только вот по этой строке
Цитата Сообщение от Wandersmann Посмотреть сообщение
view_cpu = "free" #вывод информации о процессоре


Добавлено через 1 минуту
Цитата Сообщение от Wandersmann Посмотреть сообщение
Другими словами, можно ли из всего массива данных, выведенных командой "free" в консоли, выбрать именно то, что мне нужно и добавить свою фразу?
а нужно именно из free?
0
3 / 3 / 1
Регистрация: 13.05.2019
Сообщений: 49
22.07.2022, 16:24  [ТС]
В данном случае - да
0
5515 / 2868 / 571
Регистрация: 07.11.2019
Сообщений: 4,758
22.07.2022, 16:25
Wandersmann, читай что тебе надо из файла /proc/meminfo и выводи
2
3 / 3 / 1
Регистрация: 13.05.2019
Сообщений: 49
22.07.2022, 23:40  [ТС]
Цитата Сообщение от u235 Посмотреть сообщение
Wandersmann, читай что тебе надо из файла /proc/meminfo и выводи
Цитата Сообщение от u235 Посмотреть сообщение
читай что тебе надо из файла /proc/meminfo и выводи
к сожалению, данный файл не выдает исчерпывающей информации, которую может дать утилита lshw. Поэтому я и хочу выбрать необходимые строки из лога вывода команды и вывести их через мой скрипт. Пока не знаю насколько это реально и можно ли так сделать из консоли, не записывая этих данных в файл...
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
22.07.2022, 23:42
так free или lshw?
0
3 / 3 / 1
Регистрация: 13.05.2019
Сообщений: 49
22.07.2022, 23:54  [ТС]
Цитата Сообщение от Jabbson Посмотреть сообщение
так free или lshw?
В данном контексте разницы нет)))
Мне надо понять как выдирать строку из консоли или файла))
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
23.07.2022, 00:57
у lshw есть флаг -json, по которому можно получить данные в уже структурированном формате

Добавлено через 21 минуту
если же реально нужно парсить вывод - subprocess или os.popen

Python
1
2
3
4
5
6
7
8
9
import os
import re
 
free = os.popen('free').read()
mem, swap  = re.findall(r'(?<=[Mem|Swap]:)(.*)', free)
headers = ['total','used','free','shared','buff/cache','available']
 
mem_data = dict(zip(headers, mem.split()))
swap_data = dict(zip(headers, swap.split()))
Добавлено через 43 секунды
но универсального способа нет, каждый придется отдельно пилить

Добавлено через 4 минуты
Python
1
2
3
4
5
6
import os
 
mem, swap = os.popen('free').read().split('\n')[1:-1]
 
mem_data = dict(zip(headers, mem.split()[1:]))
swap_data = dict(zip(headers, swap.split()[1:]))
2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
23.07.2022, 08:22
Цитата Сообщение от Jabbson
(?<=[Mem|Swap]
(?<=(Mem|Swap):)
не?
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
23.07.2022, 15:20
на самом деле нет, лукбехайнду такое не понравится.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
23.07.2022, 15:53
Jabbson, тогда ИЛИ там зачем?

Добавлено через 3 минуты
Понятно, что регулярка плотно прибита именно к данному выводу, и диапазон сработает.
А так, regex рулит. Там можно в лукбехайнде переменное число символов
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
23.07.2022, 16:05
это мое крайнее слово
Python
1
mem, swap  = re.findall(r'(?<=(Mem: |Swap:))(.*)', free)
1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
23.07.2022, 16:09
Jabbson, во!

Добавлено через 2 минуты
Jabbson, не?
Python
1
r'(?<=(?:Mem: |Swap:))(.*)'
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
23.07.2022, 16:11
Я уже не проверял, наверное
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
23.07.2022, 16:18
Не, не так работает это все имхо

Добавлено через 7 минут
Python
1
2
3
4
5
6
7
import re
import regex
 
free = 'Mem: some_memory     Swap: some_swap'
print(*regex.findall(r'(?<=(?:Mem|Swap):\s*)(\S*)', free))  # some_memory  some_swap
print(*re.findall(r'(?<=[Mem|Swap]:)(.*)', free))   # some_memory     Swap: some_swap
print(*re.findall(r'(?<=(Mem: |Swap:))(.*)', free)) # ('Mem: ', 'some_memory     Swap: some_swap')
0
Эксперт по компьютерным сетям
 Аватар для Jabbson
5907 / 3359 / 1036
Регистрация: 03.11.2009
Сообщений: 10,008
23.07.2022, 16:21
Именно по этой причине я и переписал без re, чтобы уменьшить кол-во импортов и секса.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.07.2022, 16:21
Помогаю со студенческими работами здесь

Скрыть окно консоли
Как скрыть выполнение процесса? У меня из формы вызывается Process.Start'ом программа, которая ничего не должна показывать, а просто...

Скрыть окно консоли
Здравствуйте, пишу на CBuilder6 + OpenGL(GLUT), когда создаю консольное приложение, помимо окна созданного GLUT'ом остаётся окно консоли,...

Скрыть окно консоли
Есть чужой проект. А именно tor. Собрал его в MinGW, внес пару изменений. Нужно что бы при запуске консоль не показывалась и приложение...

Скрыть курсор в консоли
Доброго времени суток. Есть вопрос. Как можно скрыть курсор в консоли, в win 7. Дело в том, что ShowCursor не работает. Есть ли...

Скрыть окно консоли
Подскажите как скрыть форму отображения консоли? Просто,чтобы оно запускалось,но ничего не отображалось,а просто выполнялся код? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru