返回列表 发帖

[文本处理] 【已解决】批处理删除 某一段代码

本帖最后由 lovekix 于 2023-7-19 19:13 编辑

比如我有一段代码
]通过批处理  能删除吗?  每次都手动查找 然后删除太麻烦
<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="windowsApp">
<uap:VisualElements DisplayName="ms-resource:WindowsBackup/Resources/WindowsBackupHostName" Description="ms-resource:WindowsBackup/Resources/WindowsBackupDescription" Square150x150Logo="WindowsBackup\Assets\MedTile.png" Square44x44Logo="WindowsBackup\Assets\AppList.png" BackgroundColor="transparent">
...
</uap:VisualElements>
<Extensions>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="ms-windowsbackup" ReturnResults="optional"/>
</uap:Extension>
<uap3:Extension Category="windows.appExtension">
<uap3:AppExtension Name="com.microsoft.windows.extensionpackage" Id="WindowsBackup" DisplayName="Extension Metadata">
<uap3:Properties>
<PackageAliases>
<PackageAlias>WindowsBackupAlias</PackageAlias>
</PackageAliases>
</uap3:Properties>
</uap3:AppExtension>
</uap3:Extension>
<uap3:Extension Category="windows.appExtension">
<uap3:AppExtension Name="com.microsoft.windows.app.windowsbackup" Id="WindowsBackup" DisplayName="Extension Metadata"/>
</uap3:Extension>
<uap3:Extension Category="windows.appExtension">
<uap3:AppExtension Name="com.microsoft.windows.extensions.xaml" Id="WindowsBackup" DisplayName="Microsoft Windows Extensions">
<uap3:Properties>
<Classes>
<WindowsBackupControl>WindowsBackup.WindowsBackupControl</WindowsBackupControl>
</Classes>
<MetadataProviders>
<Provider>WindowsBackup.XamlMetaDataProvider</Provider>
</MetadataProviders>
<ResourceDictionaries>
<ResourceDictionary>WindowsBackup.WindowsBackupResources</ResourceDictionary>
</ResourceDictionaries>
</uap3:Properties>
</uap3:AppExtension>
</uap3:Extension>
</Extensions>
<uap:ApplicationContentUriRules>
<uap:Rule Type="include" Match="https://login.live.com/"/>
<uap:Rule Type="include" Match="https://signup.live.com/"/>
<uap:Rule Type="include" Match="https://account.live.com/"/>
</uap:ApplicationContentUriRules>
</Application>COPY
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="windowsApp">COPY
到</Application> 结束
中间有什么不重要

TOP

回复 3# Batcher


    不会用啊  

文件名是 appxmanifest.xml

TOP

回复 4# 77七


    不行啊   只是把  里面的内容全部复制出来了
  没有 删除  那一段代码

TOP

TOP

回复 9# 77七


   

!丢了

TOP

回复 11# 77七

谢谢
    刀工完美
@echo off
rem http://bbs.bathome.net/redirect.php?goto=findpost&ptid=12042&pid=76476
set "str1= <Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="windowsApp">"
set "str2= </Application>"
rem setlocal enabledelayedexpansion
set "str1=%str1:"="""%"
for /f "tokens=1 delims=:" %%a in ('findstr /nxr /c:"%str1%" "appxmanifest.xml"') do set start=%%a
for /f "tokens=1 delims=:" %%a in ('findstr /nxr /c:"%str2%" "appxmanifest.xml"') do (
if %%a gtr %start% (
set end=%%a
goto :next
)
)
:next
(for /f "tokens=1* delims=:" %%a in ('findstr /n .* "appxmanifest.xml"') do (
set "str=%%b"
setlocal enabledelayedexpansion
if %%a lss %start% echo=!str!
if %%a gtr %end% echo=!str!
endlocal
))>"appxmanifest-2.xml"
endlocal
pauseCOPY

TOP

本帖最后由 lovekix 于 2023-7-28 10:24 编辑

回复 11# 77七






https://im.ge/i/9D1sha

无法打开    (15行的)
(for /f "tokens=1* delims=:" %%a in ('findstr /n .* "appxmanifest.xml"') do
加了两行命令   解决了
@echo off
xcopy "C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\appxmanifest.xml" "%cd%\" /k /c /q /r /y
rem http://bbs.bathome.net/redirect.php?goto=findpost&ptid=12042&pid=76476
set "str1= <Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="windowsApp">"
set "str2= </Application>"
rem setlocal enabledelayedexpansion
set "str1=%str1:"="""%"
for /f "tokens=1 delims=:" %%a in ('findstr /nxr /c:"%str1%" "C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\appxmanifest.xml"') do set start=%%a
for /f "tokens=1 delims=:" %%a in ('findstr /nxr /c:"%str2%" "C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\appxmanifest.xml"') do (
if %%a gtr %start% (
set end=%%a
goto :next
)
)
:next
(for /f "tokens=1* delims=:" %%a in ('findstr /n .* "appxmanifest.xml"') do (
set "str=%%b"
setlocal enabledelayedexpansion
if %%a lss %start% echo=!str!
if %%a gtr %end% echo=!str!
endlocal
))>"C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\appxmanifest.xml"
endlocal
del "appxmanifest.xml"
pauseCOPY

TOP

回复 9# 77七


    微软总把 制表符  换成  空格   (有时候 9个   有时候8个)

有时候  还在会把
<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10:TrustLevel="mediumIL" uap10:RuntimeBehavior="windowsApp">"

替换成
<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10/4:TrustLevel="mediumIL" uap10/4:RuntimeBehavior="windowsApp">"

还有其他办法吗?

TOP

本帖最后由 lovekix 于 2023-12-1 08:52 编辑

回复 26# 77七


https://wwrj.lanzouu.com/i461Y1ggo9zc

TOP

回复 28# 77七

这行代码  可以用* 代替后面的吗?
set "str1=<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App" uap10[/]*[4]*:TrustLevel="mediumIL" uap10[/]*[4]*:RuntimeBehavior="windowsApp">"COPY
set "str1=<Application Id="WindowsBackup" Executable="WindowsBackupClient.exe" EntryPoint="WindowsBackup.App"*>"COPY

TOP

回复 31# terse


    cscript v 不是内部命令

TOP

回复 33# terse


    PE 下没有cscript。exe 这个文件

TOP

回复 28# 77七


    如果想多删除
<Application Id="WebExperienceHost" Executable="WebExperienceHostApp.exe" EntryPoint="WebExperienceHostApp.App"
这段

需要 怎么弄?

TOP

本帖最后由 lovekix 于 2023-12-2 16:24 编辑

回复 36# terse


要是  以后删除第三段  代码 需要怎么弄?

还有 莫名多出  2个   ECHO 处于关闭状态

TOP

返回列表