我想批量删除当前文件夹和子文件夹中所有文件的所有空行。
myscript.bat:
$(function(){
$('mydiv').load('page2.com');
}
文件夹层次结构:
f1.txt和f2.txt是带有空行的简单测试文件。 它可以与f1.txt一起使用,但只需删除f2.txt。
答案 0 :(得分:1)
您可以利用for /F
仍然忽略空行这一事实:
rem // Define constants here:
set "_ROOT=%~dp0."
set "_MASK=*.*"
set "_TEMP=%TEMP%\%~n0_%RANDOM%.tmp"
rem // Walk through all matching files recursively:
for /R "%_ROOT%" %%F in ("%_MASK%") do (
rem // Exclude this script:
if /I not "%%~fF"=="%~f0" (
rem // Write content of file to temporary file:
> "%_TEMP%" (
rem // Read file line by line, ignoring empty ones:
for /F usebackq^ delims^=^ eol^= %%L in ("%%~F") do (
rem // Just return every non-empty line:
echo(%%L
)
)
rem // Move temporary file onto original one:
move /Y "%_TEMP%" "%%~F"
)
)
答案 1 :(得分:1)
public class ExtendedCanvas:Canvas {
//I wish to automatically populate this scroll viewer
//reference to the instance of the scrollviwer which contains
//this ExtendedCanvas instance
private ScrollViewer _containingScrollViewer = null;
}
<ScrollViewer VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" >
<local:ExtendedCanvas x:Name="extendedCanvas" />
</ScrollViewer>
递归提供所有文件(包括子文件夹中的文件)。
for /r %%A in (*) do (
findstr /v "^$" "%~fA" > "%~dpnA.new"
ren "%~dpnA.new" "%%~nxA"
)
排除(for /r
)的所有空行(findstr
= StartOfLine,/v
= EndOfLine),并将其余行写入新文件。然后,^
命令将新文件重命名为原始名称。
Pro:比逐行读取每个文件更快;不用担心特殊字符。
相反(或者甚至是专业版-取决于您的意图):这会删除“真空”行。仅包含空格的行并不是真的为空,也不会被删除。