Точно так же, как при продаже домов, три самые важные вещи - это местоположение, местоположение, местоположение, кажется, что, отвечая на вопросы, три самые важные вещи - это мотивация, мотивация и мотивация... очевидно. Вот мое решение, оно работает как шарм. Не стесняйтесь комментировать, все подлежит улучшению .. <3 <3 <3
taskkill /im TOTALCMD64.EXE
IF %USERDOMAIN% == GwenKillerby goto Win10
echo win8
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'D\:\\', 'QzQ' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'C\:\\', 'D:\' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'QzQ', 'C:\' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace '\\', '\' } | Set-Content f:\totalcmd852\wincmd.ini"
goto ProgStart
:Win10
echo win10
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'C\:\\', 'QzQ' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'D\:\\', 'C:\' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace 'QzQ', 'D:\' } | Set-Content f:\totalcmd852\wincmd.ini"
powershell -Command "(Get-Content f:\totalcmd852\wincmd.ini) | ForEach-Object { $_ -replace '\\', '\' } | Set-Content f:\totalcmd852\wincmd.ini"
:ProgStart
f:\totalcmd852\TOTALCMD64.EXE
(Кстати: если кто-нибудь может сказать мне, почему в 'C\:\\', 'D:\'
' C ' требуется две косые черты, в то время как для' D 'достаточно одной, я был бы так счастлив.)
Во-первых, я попытался сделать его условным для версии Windows через tmpfile, что является более элегантным и надежным способом.
rem VER > tmpFile
rem set /p myvar= < tmpFile
rem del tmpFile
Но я не мог заставить его работать, поэтому я использовал UserWh независимо. Кроме того, выходные данные VER в Win10 и 8 практически идентичны: Microsoft Windows [6.xxx] и Microsoft Windows [10.xxx], что означает работу с этими жуткими токенами, брррр!
Я открыт для любого решения, которое имеет меньше строк или является менее сложным, чем. Или, вы знаете, полный сценарий PS /batfile ... ;););)