Задать вопрос
  • В каких странах можно удаленно работать из РФ?

    @res2001
    aleks-th,
    а разве работу ищут по временам года ?

    По собственным наблюдениям HRы активизируются в начале осени и в начале весны.
    Как правило летом и зимой особой активности от них нет.
    Это когда сами HRы начинают активно зазывать.
    Самому искать можно в любое время года.
    Написано
  • Как сделать публичное подключение по ssh в termux?

    @res2001
    Это если телефон выходит в интернет по своему WiFi.
    Если телефон в интернете через сотового оператора, то все сильно усложняется, вплоть до не возможности выполнить.
    И это помимо того, что надо добавить дополнительного пользователя в ОС/sshd.
    Написано
  • Самый изящный способ встроенными средствами windows отправить письмо smtp, как?

    @res2001
    telnetом можно отправлять что-то простое, если сервер поддерживает не шифрованный SMTP. В сети хватает примеров как это использовать. Процесс можно автоматизировать, запихнув содержание письма в файл и отправив этот файл телнету в stdin: telnet ... <email.txt
    Написано
  • Linux. Перенаправление всего трафика между интерфейсами?

    @res2001
    wotjob, Маршрутизация настраивается через таблицу маршрутизации.
    На сервере должен быть прописан шлюз по умолчанию, доступный через интерфейс eth1, тогда добавится правильный маршрут по умолчанию и вообще все пакеты (в т.ч. и с gre) предназначенные для интернет пойдут на eth1 на шлюз по умолчанию.
    Написано
  • Static routes в Windows 10. Можно ли через них заблокировать доступ в интернет?

    @res2001
    Чтоб не было доступа к локальной сети можно поменять IP на какой-нибудь не входящий в вашу локальную подсеть. Из ком.строки можно сделать командой netsh. Потребуются права администратора. Чтоб вернуть доступ обратно - поменяйте адрес на рабочий или включите динамическое выделение адреса.
    Написано
  • Правильно ли написан скрипт командной строки?

    @res2001
    Хотелось бы чтоб это было так, но нет. В комментариях к вопросу написал почему.
    Написано
  • Правильно ли написан скрипт командной строки?

    @res2001
    BjornBorn,
    Нужно ли в конце скриптов писать exit или не обязательно?

    Не обязательно.
    Вроде всё работает

    Ну newFile.cmd у вас создается, только он вызывает ошибку при выполнении, т.к. его содержимое не корректно.
    Т.к. текст ошибки пишется в stderr, а его вы не перенаправляете в index.php, то index.php получается пустым. Саму ошибку можно увидеть, если запустить в консоли полученный newFile.cmd.
    Думаю правильней было бы как-то так:
    echo set /p =^<nul ^>index.php> newFile.cmd
    Полученный в результате newFile.cmd не вызывает ошибки при выполнении и генерирует пустой index.php
    Написано
  • Как исправить заполнение ОЗУ?

    @res2001
    awjfuwg,
    моя проблема (то есть следствие заполненности памяти) это крашинг приложений, а иногда и системы когда я запускаю процессы/программы которые потребляют выше 3000 МБ

    Как известно, вся память в винде виртуальная и каждый процесс реально может использовать очень много памяти.
    При этом если физической памяти меньше, чем требуется виртуальной, то включается механизм использования файла подкачки и процессы все равно будут работать. Да они будут работать медленно, но падать из-за нехватки памяти не будут.

    Так что я бы на вашем месте разбирался с приложениями которые падают.
    Падающая система - это вопрос другой. ОС падает обычно или из-за кривых драйверов или из-за неисправности оборудования. Из-за дефицита памяти система падать не должна.

    1. Проверьте включен ли у вас файл подкачки, какие лимиты установлены на него, хватает ли свободного места на дисках, где расположен файл подкачки.
    2. Протестируйте с пристрастием память, как писали выше. В случае битой памяти ошибки могут быть самые разные и часто никак не указывающие на проблемы с памятью. Если на тестах будут ошибки и у вас несколько плашек памяти, то нужно установить какая из плашек сбоит - оставляйте только одну плашку и прогоняйте тест. Битые плашки придется заменить.
    3. Еще одна аппаратная проблема, которая приводит к странному поведению системы - "уставший" блок питания. Когда появляется дополнительная нагрузка требуется больше мощности, но старый блок питания может не выдавать требуемую мощность и это то же может приводить к необъяснимым ошибкам. Тут проще всего найти другой БП и погонять комп с ним, если ошибок не будет - значит проблема со старым БП.
    4. Дальше можно протестировать диски, провести нагрузочное тестирование на процессор, видеокарту с диагностического загрузочного носителя.
    5. Если тесты результатов не дадут ... ну я бы уже на этом этапе переустановил винду, т.к. это гораздо быстрее, чем разбираться с ее ошибками. Но, если любите трудности, можно и поразбираться, правда без гарантий.
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов,
    т.е. после первого ввода пары значений просто появляется пустая строка

    Да это не пустая строка, это то что ты видишь в ходе работы ReadLine в этом участке кода.
    while (Console.ReadLine() == stopWord);
    А это
    Console.WriteLine("Если хотите выйти введите exit: ");

    просто делает немного яснее происходящее.

    Я же тебе писал, что у тебя не 2 ввода значений, как ты похоже думаешь, а 3. Третий раз ты получаешь от пользователя exit или любое другое значение, которое интерпретируется как продолжение ввода.
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов,
    Мне нужно чтобы программа выдавала запрос на ввод имени и возраста пока юзер не введет exit

    У вас сейчас в коде пользователь должен вводить данные 3 раза на каждой итерации цикла:
    1. имя
    2. возраст
    3. признак возврата: exit или все что угодно для продолжения.

    Вы хотите какое-то другое поведение?
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов, За исключением того, что по ссылке криво выводятся русские буквы, остальное все отработало так как надо.
    Разве что вы не выполнили этот совет, поэтому вам возможно и не понятно что делает ваш код и в каком состоянии программа в данный момент времени: Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов, Скиньте сюда что происходит при запуске программы. Чтоб было видно, что программа выдает, что вы вводите и т.п.
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов, while (Console.ReadLine() != stopWord);
    Внимательно прочитайте описание цикла и поймите чего вы хотите добиться этим условием.
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Дамир Валиахметов, После ageDictionary.Add(name, age); можно добавить
    Console.WriteLine("Если хотите выйти введите exit: ");

    Тогда уже будет понятней
    В while должно быть сравнение на не равно.
    Написано
  • Как реализовать ввод данных в консоль пользователем, пока он не введет определенное слово?

    @res2001
    Т.к. до этого циклы изучались только в рамках ввода чисел. А как работать с вводом в цикле не понимаю.

    С вводом работать одинаково, хоть в цикле, хоть не в цикле. Циклы и ввод - это разные действия, друг с другом никак не связанные, вы их связываете только алгоритмом вашей программы (т.е. порядком выполнения инструкций).

    В цикле читайте стандартный ввод и проверяйте, что там пользователь ввел. Если "exit", то завершаем программу, если что-то другое - очередная итерация цикла.
    На эту задачу хорошо ложиться цикл do {} while с постусловием.
    Написано
  • Как написать скрипт на bat?

    @res2001
    IvanU7n, Да, тут есть. Думал установилось как часть OpenSSH сервера. Но возможно уже есть и по умолчанию, не проверял. Спасибо!
    Написано
  • Как написать скрипт на bat?

    @res2001
    IvanU7n, Не нашел.
    У меня Вин11 с последними обновлениями.

    Правда scp у меня есть в разных видах - есть как часть OpenSSH, есть winscp, есть в WSL, в putty. Но "родной" виндовой утилиты нет, она бы, видимо, лежала в system32 - там ничего похожего нет.
    Написано
  • Как написать скрипт на bat?

    @res2001
    Нафига вы понаставили этих $$$$$? - тут же не perl и не bash. Просто ваш код резанул по глазам, можете не обращать внимания :)

    В целом подход правильный. Сам когда-то делал подобные сценарии для ftp.
    Пробовал просто в командной строке ввести команду,

    Вот с этого на самом деле и надо начинать. Сделайте все руками в ком.строке ftp, когда в этом режиме все получится, просто те же команды сунете в батник. Пока не добьетесь правильной работы в ручном режиме, нет смысла автоматизировать - только усложните отладку. Сами команды ftp, что в ком.строке ftp, что в ftp сценарии одни и те же.
    В самом ftp скудная справка из которой сложно что-то понять. Более подробно по командам ftp смотрите тут: https://learn.microsoft.com/en-us/previous-version...

    Что у вас там за кракозябры появляются местами?
    Вывод ftp "Consider using PASV." видимо говорит о том, что ftp сервер работает в пассивном режиме, клиенту то же надо задать этот вариант работы.

    Вообще к слову, ftp старый и не удобный протокол. Лучше бы использовать что-то другое. Можно например scp попробовать, правда встроенной поддержки в винде нет, надо использовать что-то стороннее (putty например).
    Написано
  • Почему собранный проект pyinstaller при вызове .bat не может выполнить команду start?

    @res2001
    В ключе /d команды start надо указывать "startup directory", т.е. текущий каталог, который будет выбран для запускаемой программы. У вас указан путь к исполняемому файлу.
    Если программа не зависит от текущего каталога, то ключ можно убрать вообще.

    При этом если заменить Popen на run, то всё работает,

    Вы уверены, что у вас вообще что-то выполняется?
    Т.к. вы запускаете батник, то видимо надо указывать параметр shell=true для popen, В Винде, в отличие от линукса, батники - это не исполняемые файлы, их умеет исполнять только cmd.exe. В линуксе ядро само способно запустить shell и в нем запустить скрипт (винда так не умеет).
    Кроме того смущает, что у вас же сразу после subprocess.Popen идет exit. Есть шанс, что до запуска второго процесса дело не доходит.

    Что бы понять что происходит на самом деле надо:
    1. Анализировать код возврата popen, обрабатывать его исключения
    2. Добавьте в конце батника команду pause, что бы окно сразу не закрывалось и вы смогли увидеть вывод команд. Того же самого можно добиться перенаправив потоки stdout и stderr батника в файл или с помощью popen.

    PS: Я не слишком силен в питоне, знаю его немного, пишу тут из-за тега cmd/bat.
    Написано