top of page

Windows command line

icacls

Узнать производителя и модель компьютера.

Узнать производителя 

wmic csproduct get vendor

 

Узнать модель

wmic csproduct get name

Серийный номер

wmic bios get serialnumber

Удаление содержимого в папке.

del /s /q d:\scan

Удаляет файлы в папке Scan на диске D. Вложенные папки не удаляются, файлы в них удаляются.

/s - Удаление указанных файлов из всех подкаталогов.

/q -  Отключение запроса на подтверждение при удалении файлов.

Справка по команде del (команда erase тоже появляется в справке и действует аналогично):

C:\Users\ria>del /?
Удаление одного или нескольких файлов.

DEL [/P] [/F] [/S] [/Q] [/A[[:]атрибуты]] имена
ERASE [/P] [/F] [/S] [/Q] [/A[[:]атрибуты]] имена

  /P            Запрос подтверждения перед удалением каждого файла.
  /F            Принудительное удаление файлов, доступных только для чтения.
  /S            Удаление указанных файлов из всех подкаталогов.
  /Q            Отключение запроса на подтверждение при удалении файлов.
  /A            Отбор файлов для удаления по атрибутам.
  Атрибуты:      

                R  Файлы, доступные только для чтения.
                S  Системные файлы.
                H  Скрытые файлы.
                A  Файлы, готовые для архивирования.
                I  Файлы с неиндексированным содержимым.
                L  Точки повторной обработки.
                -  Префикс "-" имеет значение НЕ.

Примеры использования:
erase D:\myfile.txt - удалить файл D:\myfile.txt 
erase D:\ - удалить все файлы в корневом каталоге диска D:
erase D:\*.bak - удалить все файлы с расширением .bak в корневом каталоге диска D:
erase D:\files - удалить все файлы в каталоге files диска D: - будут удалены все файлы, не имеющие хотя бы один из атрибутов скрытый (H) , системный (S) и только чтение ( R ) 
del /A:h d:\files\*.htm - удалить все файлы с расширением htm и атрибутом скрытый в каталоге D:\files . Файлы, не имеющие атрибута скрытый или имеющие, дополнительно к нему, другие атрибуты, удаляться не будут.
del /A:hsra d:\files\* - удалить все файлы с установленным набором атрибутов H , S, R, A 
del d:\files\?d?.* - удалить файлы, имеющие в имени символ d и любое расширение.
del /S /F /Q %TEMP%\*.tmp - очистка каталога временных файлов. Будут удалены все временные файлы с расширением .tmp в каталоге для временных файлов и всех его подкаталогах без запроса на подтверждение удаления. 

Создание групп, добавление в них пользователей, наследование и права доступа.

1) Cоздаем 2 группы (Group_01_R на чтение, Group_01_RW на запись) и добавляем нескольких пользователей:

dsadd group "cn=Group_01_R,ou=test,ou=company,dc=toplivo,dc=ru" -members "cn=Иванов Иван Иванович,ou=Продажи,ou=company,dc=toplivo,dc=ru" "cn=Петров Петр Петрович,ou=Продажи,ou=company,dc=toplivo,dc=ru"

dsadd group "cn=Group_01_RW,ou=test,ou=company,dc=toplivo,dc=ru" -members "cn=Сидоров Сидор Сидорович,ou=Продажи,ou=company,dc=toplivo,dc=ru" "cn=Акупник Аркадий Вазгенович,ou=Продажи,ou=company,dc=toplivo,dc=ru"

По-умолчанию, если не использовать никаких ключей, dsadd group создает тип группы Security и group scope Global. 

Ключи:

-secgrp. Данный параметр указывает тип группы: безопасности (yes) или распространения (no). Если параметр не указан, то по умолчанию значением данного параметра считается yes;

-scope. Текущий параметр задает область действия группы. Доступные параметры: локальная в домене (l), глобальная (g) или универсальная (u). По умолчанию, также как и при помощи графического интерфейса, область действия назначается глобальной;

-samid. Этот параметр определяет использование для данной группы SAM имени, как уникального атрибута sAMAccountName группы. Желательно имя для sAMAccountName и группы указывать идентичные;

-desc. Данный параметр отвечает за краткое описание группы;

-memberof. Этот параметр назначает одну или несколько групп, к которым требуется добавить новую. Если групп несколько, то их следует добавлять через пробел;

-members. При помощи этого параметра вы можете добавить членов в группу. Члены должны указываться в виде DN-имен и разделяться пробелами.

2) На папке "test folder", куда будем вешать группы, убираем наследование

icacls "D:\test folder" /inheritance:d

Ключи:

e - включает наследование
d - выключает наследование, сохраняя ACE
r - выключает наследование, удаляя все ACE

3) Удаляем с папки ненужные группы и вешаем созданные.

icacls "D:\test folder" /remove:g "domain users" /remove:g users /grant:r Group_01_R:rx Group_01_RW:M

/remove[:[g|d]] Sid - удаление всех вхождений Sid в ACL. При использовании параметра :g удаляются все вхождения предоставленных прав в этом Sid. При использовании параметра :d удаляются все вхождения отозванных прав в этом Sid.

/grant[:r] Sid: предоставление указанных прав доступа пользователя. При использовании параметра :r эти разрешения заменяют любые ранее предоставленные явные разрешения. Если параметр :r  не используется, разрешения добавляются к любым ранее предоставленным явным разрешениям.

Группе для чтения задаем ключ RX - чтение и выполнение.

Группе для записи задаем ключ M - на изменение.

Полную справку смотрите через команду  icacls /? 

Примеры реальных скриптов можно скачать по ссылке https://yadi.sk/d/65vrWDUIugE8r 

Задача: создать 84 группы на чтение и на запись для 84 папок.

1-м скриптом создаем  группы на чтение и добавлем туда пользователей (запускаем скрипт на КД).

2-м скриптом создаем  группы на запись и добавлем туда пользователей (запускаем скрипт на КД).

3-м скриптом убираем наследование с папок, удаляем ненужные группы, вешаем нужные группы и даем им права (запускаем скрипт на файл-сервере). Запускать скрипт лучше 2 раза, т.к. наследование не успевает отрабатывать и новые группы не добавляются.

Позже, если понадобится, 4-м скриптом добавляем новых пользователей в уже созданные группы.

Скрипты отработаны. Нужно только заменить домен tvoydomen.local на свой.

Старые компьютеры в AD.

Выводим на экран список компьютеров, неактивных в течении 10 недель. 

dsquery computer -inactive 10

Выводим на экран список компьютеров в определенном OU, неактивных в течении 10 недель. 

dsquery computer "OU=workstation,OU=computers,OU=company,DC=domain,DC=com" -inactive 10

Внимание! Список OU указывается в порядке нахождения в AD!

Удаляем компьютеры, неактивные в течении 10 недель.

dsquery computer -inactive 10 | dsrm -noprompt

 

 

 

 

 

Перемещаем компьютеры, неактивные в течении 10 недель, из одного OU в другой. 

dsquery computer "OU=workstation,OU=computers,OU=company,DC=domain,DC=com" -inactive 10 | dsmove -newparent "OU=test,OU=workstation,OU=computers,OU=company,DC=domain,DC=com"

Не работает. Видимо, берет только один компьютер. Лучше использовать PS.

Выключение/Перезагрузка/LogOff компьютера из командной строки.

LogOff из командной строки.

shutdown /l /f

где /l = Log off и /f = force

Выключение удаленной машины с именем client1

shutdown /s /m \\client1

где /s = выключение, /m \\client1 - удаленная машина

Перезагрузка удаленной машины с именем client1

shutdown /r /m \\client1

где /r = перезагрузка, /m \\client1 - удаленная машина

Перезапуск служб на удаленном компьютере из командной строки.

На компьютере client1 перезапускаем антивирус (служба avp)

sc \\client1 stop avp
sc \\client1 start avp

Computer Management из командной строки.

compmgmt.msc

Конвертация MBR и GPT при установке ОС.

Shift+F10

diskpart
list disk
select disk <disk number>
clean
convert gpt
exit

Setup was unable to create a new system partition or locate an existing system partition.

https://www.youtube.com/watch?v=o4ilMAAk1Q8

 

Каждый файл в отдельный архив 7-zip WinRAR

 

Создаем файл .bat с содержимым:

для 7-zip:

set _in=с:\in
set _out=с:\out
set _arcpath=c:\Program Files\7-zip
for %%i in (%_in%\*.*) do "%_arcpath%\7z" a "%_out%\%%~ni.7z" "%%i"


для WinRAR:

set _in=с:\in
set _out=с:\out
set _arcpath=c:\Program Files\WinRar
for %%i in (%_in%\*.*) do "%_arcpath%\rar" a -ep1 -t -m0 "%_out%\%%~ni.rar" "%%i"


, где _in - входной каталог, _out - каталог, где будут размещаться созданные архивы, _arcpath - путь до архиватора. В данном скрипте обрабатываются все файлы из входного каталога. При необходимости, вместо маски *.* можно указать любую маску файла. Например, для текстовых файлов нужно прописать маску *.txt*.

Ключ -m0 указывает на метод сжатия. -m0 - без сжатия, -m3 - обычное сжатие.

Подробнее с ключами можно ознакомиться http://winrar.pp.ua/html/HELPSwM.htm

В результате выполнения скрипта в выходном каталоге появятся архивы, в каждом их которых будет по одному файлу из входного каталога.

Службы в состоянии starting и stopped.

Статья

https://www.se.com/ww/en/faqs/FA239679/

Находим имя службы (Service Name).

В командной строке sc queryex [servicename]

Узнаем PID

Завершаем службу по PID

taskkill /f /pid [PID]

Если команда успешна, получаем сообщение - SUCCESS: The process with PID XXXX has been terminated.

Показать, активирована ли Windows.

slmgr /xpr

Если сообщение говорит, что Windows в режиме уведомления, значит не активирована.​​

Запуск CMD от имени другого пользователя.

Можно выполнить и в CMD и в PowerShell

runas /user:domain\username cmd.exe

Пример: runas /user:ria.lan\a.pushkin cmd.exe

bottom of page