Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Скрипт на переброс и удаление. Что не так?

Ответить
Настройки темы
PowerShell - [решено] Скрипт на переброс и удаление. Что не так?

Новый участник


Сообщения: 17
Благодарности: 1

Профиль | Отправить PM | Цитировать


$VMName ="1cs"
$VMName ="скрипт"
$log ="C:\Scripts\logs\" + $VMName+ ".log"
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- START --- "+$data >> $log
$p1 = "C:\1"
$p2 = "\\it9\MSI\Новая папка"
$ist = "C:\дворф\test"
$isp1 = Test-Path -Path "C:\1\1sc.txt"
$isp2 = Test-Path -Path "\\it9\MSI\Новая папка\1sc.txt"

if ($isp1 -eq "False", $isp2 -eq "False")
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

elseif ($isp1 -eq "True", $isp2 -eq "False")
{
Remove-Item -Path "\\it9\MSI\Новая папка\*"
Remove-Item -Path "C:\1\1sc.txt"
Copy-Item $ist -Destination $p2 -Recurse -Force -Verbose
New-Item $p2 -name 1sc.txt -type "file"
}

elseif ($isp1 -eq "False", $isp2 -eq "True")
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

else
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

#===================================
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- FINISH --- "+$data >> $log


Проблема в том что при проверке блоков выдает ошибку. Что не так может кто что увидит?

Отправлено: 06:03, 28-07-2020

 

Новый участник


Сообщения: 17
Благодарности: 1

Профиль | Отправить PM | Цитировать


$VMName ="1cs"
$VMName ="скрипт"
$log ="C:\Scripts\logs\" + $VMName+ ".log"
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- START --- "+$data >> $log
$p1 = "C:\1"
$p2 = "\\it9\MSI\Новая папка"
$ist = "C:\дворф\test"
$isp1 = Test-Path -Path "C:\1\1sc.txt"
$isp2 = Test-Path -Path "\\it9\MSI\Новая папка\1sc.txt"

if ($isp1 -eq "True" -and $isp2 -ne "True")
{
Remove-Item -Path "\\it9\MSI\Новая папка\*"
Remove-Item -Path "C:\1\1sc.txt"
Copy-Item $ist -Destination $p2 -Recurse -Force -Verbose
New-Item $p2 -name 1sc.txt -type "file"
}

elseif ($isp2 -eq "True" -and $isp1 -ne "True")
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

elseif ($isp2 -eq "False" -and $isp1 -eq "True")
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

else
{
Remove-Item -Path "C:\1\*"
Remove-Item -Path "\\it9\MSI\Новая папка\1sc.txt"
Copy-Item $ist -Destination $p1 -Recurse -Force -Verbose
New-Item $p1 -name 1sc.txt -type "file"
}

#===================================
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- FINISH --- "+$data >> $log


Вот так вот работает! А теперь вопрос как мне сделать так что бы при удалении файлов ПШ не просил подтверждения на удаление???

Отправлено: 07:19, 28-07-2020 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
-confirm:$false

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)


Отправлено: 08:11, 28-07-2020 | #3


Новый участник


Сообщения: 17
Благодарности: 1

Профиль | Отправить PM | Цитировать


-Recurse вот она вставочка для удаления подтверждения) всем спасибо!

Отправлено: 08:31, 28-07-2020 | #4


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6491
Благодарности: 1465

Профиль | Отправить PM | Цитировать


Это не вставочка для удаления подтверждения, а указание обрабатывать подпапки.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 09:44, 28-07-2020 | #5


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


Test-Path строку что-ли возвращает?

Отправлено: 13:29, 28-07-2020 | #6


Аватара для YuS_2

Crazy


Contributor


Сообщения: 1171
Благодарности: 487

Профиль | Отправить PM | Цитировать


Цитата Sham:
Test-Path строку что-ли возвращает? »
Цитата:
Выходные данные
System.Boolean
The cmdlet returns a Boolean value.

-------
scio me nihil scire. Ѫ


Отправлено: 14:15, 28-07-2020 | #7


Новый участник


Сообщения: 17
Благодарности: 1

Профиль | Отправить PM | Цитировать


Переделанный...


#---задаем имя машины и каталоги резервного копирования, каталог логирования, записываем время начала. Недельный!!!!
$VMName ="Chili"
$log ="C:\Scripts\logs\" + $VMName+ ".log"
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- START --- "+$data >> $log

#Путь к папке (конечная)
$papka1 = "\\backup\e$\Chili"
$papka2 = "\\nautilus\e$\Chili"

#Источник
$istochnik = "\\0,0,0,0\backup\"


#Выбор папки по последним датам (конечная)
$IshDate1 = (Get-Item \\backup\e$\Chili).LastWriteTime -le (Get-Item \\nautilus\e$\Chili).LastWriteTime
$IshDate2 = (Get-Item \\backup\e$\Chili).LastWriteTime -ge (Get-Item \\nautilus\e$\Chili).LastWriteTime


if ($IshDate1 -ne "True" -and $IshDate2 -eq "True")
{
robocopy "$istochnik" "$papka2" /MIR #делаем синхронизацию
}

elseif ($IshDate1 -eq "True" -and $IshDate2 -ne "True")
{
robocopy "$istochnik" "$papka1" /MIR
}

elseif ($IshDate1 -eq "True" -and $IshDate2 -eq "True")
{
robocopy "$istochnik" "$papka1" /MIR
}

elseif ($IshDate1 -ne "True" -and $IshDate2 -ne "True")
{
robocopy "$istochnik" "$papka1" /MIR
}

#===================================
$data = Get-Date -Format "dddd MM/dd/yyyy HH:mm"
$VMName+" --- FINISH --- "+$data >> $log

Отправлено: 05:58, 27-10-2020 | #8


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


tubxtru, коллега, может, Вы начнёте пользовать тэг «code», а?

Отправлено: 21:19, 27-10-2020 | #9


Новый участник


Сообщения: 17
Благодарности: 1

Профиль | Отправить PM | Цитировать


Iska
Спасибо за ссылку)

Отправлено: 06:10, 28-10-2020 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] Скрипт на переброс и удаление. Что не так?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Прочее - Переброс портов или как-то так... hovden Сетевые технологии 3 22-10-2013 00:46
CMD/BAT - [findstr] не ищет так как должен,в чем дело?или что не так? nfs911 Скриптовые языки администрирования Windows 7 22-07-2013 12:30
CMD/BAT - сделать так, что бы если ipconfig /all видел все ip адреса, то скрипт продолжал дальш BERGAMOD Скриптовые языки администрирования Windows 4 02-11-2012 18:56
Что не так на картинке? Jr.Janitor Юмор 19 25-12-2011 16:04
Ни разу не собирал комп. Какова вероятность, что что-то пойдёт не так? Twix1124 Выбор отдельных компонентов компьютера и конфигурации в целом 2 23-10-2011 13:21




 
Переход