Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Сценарии для Windows

Модерирует : KLASS, IFkO

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225

Открыть новую тему     Написать ответ в эту тему

KLASS



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Старые и смежные темы: по CMD и в Программах | по PowerShell | В помощь системному администратору | Прикладное программирование

PowerShell
Версии | Ассоциация и подпись сценариев
Сценарий для ассоциации файлов PowerShell и запуска неподписанных скриптов.
 
Прочее
Расширение возможностей
Функции
Write-Color
Output-DebugString
Провайдеры
Готовые скрипты
Полезные ссылки | Будет ли репозиторий PowerShell на ru-board?
Книги в PDF
Cheat Sheets
 

Cmd
Для перекодирования кириллицы 866<—>1251 пользуйтесь онлайн сервисом Перекодировщик кириллицы
 
Готовые решения и частые вопросы
 
Описания работы команд и символов участниками темы:
setlocal enabledelayedexpansion и переменные окружения
символы & и && в командной строке
Переменная %0
 
Полезные ссылки и утилиты

WSH (VBScript, JScript)
Программирование "удобняшек" на VBScript

Примечания:
• Большие куски кода заключайте в тэг [ more ]
• Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте код без пробелов иначе сценарий может работать неправильно. Также для удаления концевых пробелов пользуйтесь скриптом от Nagual, или VBS-Скрипт-Модулем от ViSiToR.
• Сторонние консольные утилиты можно использовать только в виде готового решения и только в рамках сценариев. Никаких обсуждений и обучений работе с утилитами не предусмотрено и прямо запрещено правилами топика.
Шапка и около-темные вопросы |

Всего записей: 11110 | Зарегистр. 12-10-2001 | Отправлено: 13:40 17-02-2018 | Исправлено: YuS 2, 08:24 19-06-2021
Arcadaw

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 Точно хз, предположу, что из-за того, что в экран не входит DisplayName.  

Это первое, что проверяю. Даже в файле нету. А потом когда на экране добиваюсь, чтобы появилось, то появляется и файле.
Спасибо за советы. Попробую.
 
Добавлено:
Да просто список служб, какие появились, у какой службы какой тип запуска. А потом в Notepad++ сравниваю и вижу разницу.

Всего записей: 1508 | Зарегистр. 25-03-2004 | Отправлено: 12:52 03-07-2022 | Исправлено: Arcadaw, 13:05 03-07-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21
 
А меня наоборот раздражает, когда проги предлагают обновиться своим встроенным автоапдейтом. Если не кликать по окошкам, а применять регулярный scoop update * - в его apps копятся  предыдущие версии и разруливаются симлинком current    
 
Шим там для того, чтобы все проги сразу попадали в путь.
 
 

Цитата:
винда-пакетными менеджерами и не пользуюсь.
Костыльно больно они все работают

 
В чём костыльность "всех их" выражается?  
У scoop/shovel и choco принципиально разные идеологии.  
 
сhoco ставит всё c элевацией и рулит зависимостями,  
scoop обходится без элевации, по сути управляет портативными установками,  
shovel опять рулит зависимостями (потому что бывает надо), зато перепаковывает пакеты гуйных инсталляторов (а не просто их автоматизирует).
 
 
Тут стоит самопроцитироваться из другой темы:
 
---
Инсталляторы - это частный случай пакетов. Например, msi - древний формат пакета.
Пакеты распространяются через фиды разнообразных пакетных менеджеров (например майковский Store один из таких менеджеров, гуйный и спамистый).
 
Большинство ПМ позволяют добавлять сторонние фиды.
Некоторые ПМ перепаковывают пакеты оригинальных виндовых инсталляторов и унифицируют логику их работы.
Некоторые ПМ позволяют желающим создавать фиды на своих ресурсах.
 
Все ПМ кэшируют пакеты локально.
 
МСОфис отродясь сопровождался своим собственным оригинальным "пакетником" для кэширования фида на файловом сервере - разумное дело похачить его логику в наших интересах.
А то и перепаковать содержимое для раздачи обыкновенными ПМ.

---


----------
Проект Либген v2 //
Обсуждение

Всего записей: 17149 | Зарегистр. 14-10-2001 | Отправлено: 13:05 03-07-2022 | Исправлено: LevT, 13:12 03-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Arcadaw
такая хитрость должна сработать
Get-Service | Ft Name,DisplayName,StartType | out-string -Width 5000 > services.lst или
Get-Service | Ft Name,DisplayName,StartType | Out-File -Width 5000 -LiteralPath services.txt -Encoding utf8
 
Добавлено:
LevT
вот пакетным покрытием и не согласованностью как между собой так и виндой. и настройками пакетов.
больно разный софт на винде. когда 75% один фиг сам делаешь в ручную, даже если просто правишь пакет локально для scoop. то возникает мысля а на хренуа. как бы делать меньше движений а на поверку у меня выходит больше движухи. в общем не покрывают они все нужды и это еще вареза не коснулись и т.д.
мне проще, раз добавить прогу в "портабельные" и всё, папка "портабельные" кочует, да там как в scoop данные узера отделены ссылками.
а те, что с установкой обязательной так и так ставить.
и как заметил в путь один раз прописать. а там shim или ярлыки.

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 13:08 03-07-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21

Цитата:
 даже если просто правишь пакет локально для scoop

 
Интересно, что именно ты правишь локально? Для меня это удивительное занятие.
 
 

Цитата:
а те, что с установкой обязательной так и так ставить.

 
Ну например я не хожу в "MS Store": почти всё ставится из scoop/shovel  - и Terminal, и дистрибутивы линя в WSL2.  И по сайтам хожу крайне редко: например в фидах shovel есть воцап и телега.
 

Всего записей: 17149 | Зарегистр. 14-10-2001 | Отправлено: 13:28 03-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LevT
правится что считать узер датой и соответственно линковать в папку к программе, правиться какой дистр качать, зачастую мне надо другой (портабельный/установочный вариант) или другие ключи установки.

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 13:39 03-07-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21
 
Ну то есть, ты у себя локально ломаешь логику пакетника - вместо того чтобы поправить его фид на гитхабе, а то и поучаствовать в его разработке. (Ну и не удивительно, что с таким подходом только унылые трудозатараты, которые лишают смысла юзание пакетников).
 
Интересно, может ты и msiexec локально у себя патчишь? Или к нему относишься с большим уважением? Почему?

Всего записей: 17149 | Зарегистр. 14-10-2001 | Отправлено: 13:54 03-07-2022 | Исправлено: LevT, 13:59 03-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
LevT

Цитата:
Ну то есть, ты у себя локально ломаешь логику пакетника - вместо того чтобы поучаствовать в его разработке на гитхабе.

не ломаю а использую представленные возможности, которые ты выше описывал как преимущества, мды
я вовсе не хочу учувствовать в разработке пакетных менеджеров под винду
мои хотелки != хотелки большинства, вот тебя например. так и зачем оно мне.
 
про уважение и msi я не понял.
мнение своё озвучил, далее флейм предвижу, без меня

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 14:06 03-07-2022
Arcadaw

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 такая хитрость должна сработать  

Хорошо. Отлично. Спасиб.

Всего записей: 1508 | Зарегистр. 25-03-2004 | Отправлено: 14:30 03-07-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21

Цитата:
мои хотелки != хотелки большинства, вот тебя например.

 
1) пакеты и пакетники повсюду, например msiexec такой же пакетник как scoop. Ручное копирование портативок тоже пакетник (не забудь добавить кем-то проделанную вручную портабелизацию пакетов для него)
 
2) У всех есть какие-то нетривиальные хотелки, но пугают трудозатраты. Всем приходится находить компромисс между желаниями и возможностями..
 
3) Ты выбрал свой пакетник ручное копирование (с личными уникальными наворотами) и не видишь плюсов в том, чтобы присоединиться к наиболее подходящему тебе сообществу.
Твое право, да.

Всего записей: 17149 | Зарегистр. 14-10-2001 | Отправлено: 14:34 03-07-2022
newhk



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет!
Подскажите, как получить выхлоп из запускаемой программы в powershell, который можно сравнить со строкой?
Например:
(Start-Process proga.exe -args "здесь ключи" -wait) -match "здесь с чем сравниваем"

Всего записей: 400 | Зарегистр. 02-02-2009 | Отправлено: 20:23 07-07-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
newhk
 
Зависит от проги. Можно использовать ключ -NoNewWindow.
 Иногда проще запустить прямо в шелле и поймать текстовую выдачу в "трубу":

Код:

PS> tasklist.exe | Select-String conhost
 
conhost.exe                   5348 Services                   0      2,772 K
conhost.exe                   6384 Services                   0      4,248 K

 
А ещё есть Start-Job - и т.д. Receive-Job
 

Код:

start-job -ScriptBlock {tasklist.exe}
...
Receive-Job -id ... | sls conhost
 

Всего записей: 17149 | Зарегистр. 14-10-2001 | Отправлено: 22:17 07-07-2022
newhk



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вообще, это в ununtu )
Я там скрипт пишу для утилиты ipset )
 
Добавлено:
Пробовал на python, но открыл, что psh с оболочкой лучше работает, меньше геморроя.
 
Добавлено:
Сам скрипт, пока сырой, но чтобы имелось представление...
Подробнее...
Идея такая.
Если утилита IPSET ругнется, что список уже заполнен, то создать новый список и везде его прописать (последнее в проекте)
Утилита ругается так: ipset v7.5: Hash is full, cannot add more elements

Всего записей: 400 | Зарегистр. 02-02-2009 | Отправлено: 23:14 07-07-2022 | Исправлено: newhk, 14:32 08-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
newhk
Start-Process не получишь так просто ни standard ни error
а как в линухе с processtartinfo дела обстоят, вопрос
может проверять $LASTEXITCODE. 0 = без ошибок, как правило. а номера ошибок есть-ли хз, man по утилите или гугл может и не помочь.
 
на винде еще и так делают: $p = & cmd "/c" "dir /b /a:h" 2>&1
$p
 
или ошибочный: $p = & cmd "/c" "der /b /a:h" 2>&1
$p
 
 
в теме про линуху спроси, там тебя научат

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 00:46 08-07-2022
newhk



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот такая конструкция помогла

Код:
 
& ipset -exist add blacklist 223.88.202.29 2>&1
if ($LASTEXITCODE -match '1'){
    Write-Host "False"
}
Спасибо!
 

 
Добавлено:
А по поводу кода завершения, то в IPSET он есть.
В python его можно поймать и, конкретно, для "Hash is full, cannot add more elements" он 256.
Но с файлами проще работать в PS )

Всего записей: 400 | Зарегистр. 02-02-2009 | Отправлено: 10:05 08-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
& ipset -exist add blacklist 223.88.202.29 2>&1
if ($LASTEXITCODE -match '1'){
    Write-Host "False"
}

 
2>&1 это перенаправление оно тут ни к чему about Redirection - PowerShell | Microsoft Docs, имеет смысл когда
Код:
$result = & ipset -exist add blacklist 223.88.202.29 2>&1
if ($LASTEXITCODE -ne 0) { # if (-not $?)
    Write-Host "Error:`n`t$result"
}

 
$? - about Automatic Variables - PowerShell | Microsoft Docs
 
и такой вариант может быть
Код:
$proc = Start-Process ipset -Args "-exist add $val2 $val1" -NoNewWindow -Wait -PassThru
$proc.ExitCode

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 11:54 08-07-2022
newhk



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21
Спасибо!
Так проще проверять условие )

Всего записей: 400 | Зарегистр. 02-02-2009 | Отправлено: 14:22 08-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Запуск от имени…
 
скрипт.ps1
Код:
$user = 'user'
$password = 'password'
$secure = ConvertTo-SecureString $password -AsPlainText -Force
$credential = [System.Management.Automation.PSCredential]::new($user, $secure)
$program = "Notepad.exe"
 
Start-Process $program -Credential $credential

 
однострочный powershell:
Код:
Start-Process Notepad.exe -Credential ([System.Management.Automation.PSCredential]::new('user', (ConvertTo-SecureString 'password' -AsPlainText -Force)))

 
lnk / cmd:
Код:
powershell -executionpolicy bypass -noprofile -nologo -windowstyle minimized -command "Start-Process Notepad.exe -Credential ([System.Management.Automation.PSCredential]::new('user', (ConvertTo-SecureString 'password' -AsPlainText -Force)))"
 

 
не забудьте заменить на свои: user, password и программу (Notepad.exe)

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 23:35 10-07-2022
Ghost Inets1

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iNNOKENTIY21

Цитата:
Запуск от имени…  

Как запустить скрипт с рабочего стола?

Всего записей: 1853 | Зарегистр. 30-03-2016 | Отправлено: 16:57 11-07-2022
iNNOKENTIY21



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
копируете код-команду из lnk / cmd:
ПКМ по рабочему столу > создать > ярлык
вставляете:
 

 
не забываете заменить на свои: user, password и программу (Notepad.exe)

Всего записей: 3519 | Зарегистр. 16-08-2012 | Отправлено: 19:43 11-07-2022
boss911



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно из батника средствами ОС создать ярлык на рабочем столе и в "моих документах" (взял из сети):

Код:
PowerShell "$WS = New-Object -ComObject WScript.Shell; $S = $WS.CreateShortcut('%UserProfile%\Desktop\PROGram.lnk'); $S.TargetPath='D:\Boss\PROGram'; $S.Save()"
 

Как тут заменить путь к ярлыку на специальную директорию GetFolderPath('Desktop')?
Ссылка.

Всего записей: 3699 | Зарегистр. 29-01-2005 | Отправлено: 00:14 19-07-2022
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225

Компьютерный форум Ru.Board » Операционные системы » Microsoft Windows » Сценарии для Windows


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru