求个批量删除文件内容空格的脚本

可bat可python
需求是这样的,一个目录里面的很多*.*的文件,首先删掉第一行,再需要把他们里面的所有空格全部删掉,或者只删除第一行的空格(原第二行),拜谢

import os
def remove_first_line_and_spaces(file_path):
with open(file_path, 'r') as file:
# 读取文件的第二行开始的所有内容
content = file.readlines()[1:]
# 删除所有行的前导空格和尾随空格
content = [line.strip() for line in content]
# 将新内容写回文件
with open(file_path, 'w') as file:
file.write('\n'.join(content))
def process_directory(directory_path):
for filename in os.listdir(directory_path):
# 构建完整的文件路径
file_path = os.path.join(directory_path, filename)
if os.path.isfile(file_path):
remove_first_line_and_spaces(file_path)
if __name__ == '__main__':
directory_path = 'path/to/directory'
process_directory(directory_path)
注意:请把 'path/to/directory' 替换为你要处理的目录的实际路径。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-02-08

您可以使用下面的 Python 代码来批量删除文件内容中的空格:

import os

def remove_spaces(file_path):

with open(file_path, 'r') as f:

lines = f.readlines()

with open(file_path, 'w') as f:

for line in lines:

line = line.strip()

if line:

f.write(line + '\n')

def main():

directory = 'path/to/directory'

for filename in os.listdir(directory):

file_path = os.path.join(directory, filename)

if os.path.isfile(file_path):

remove_spaces(file_path)

if __name__ == '__main__':

main()

说明:

    remove_spaces 函数打开文件,读取所有行并使用 strip 函数删除空格。然后再写入文件。

    main 函数递归地遍历目录,找到所有文件并删除其中的空格。

    您可以指定要处理的文件夹路径,并在代码中替换 directory = 'path/to/directory'。

第2个回答  2023-02-08
以下是一个使用 Python 删除文件内容空格的代码片段:
import os
def remove_space(file):
with open(file, "r") as f:
lines = f.readlines()
with open(file, "w") as f:
for line in lines[1:]:
f.write(line.strip() + "\n")
directory = "YOUR_DIRECTORY"
for filename in os.listdir(directory):
if filename.endswith(".txt"):
remove_space(os.path.join(directory, filename))
这段代码会读取目录中的所有 ".txt" 文件,删除第一行并去除其余所有行的空格。如果您想保留其他行的空格,只删除第一行,可以将下面的一行代码改为:
f.write(lines[1].strip() + "\n")
第3个回答  2023-02-08
从批量文件内容删除空间,一个可以使用Linux命令行工具“发现”和“xargs”相关的命令。“查找”命令可以用来定位文件空间在他们的名字,和“-print0”选项可以用来替代null字符的空间。“xargs命令然后需要null字符并将它转换成一个空间。或者,可以使用命令如awk, tr或sed替换空格的文件名。例如,可以使用以下shell脚本删除所有空格的文件从一个目录:' ' '! / bin / bash*文件的
第4个回答  2023-02-09
@echo off
set "srcdir=C:\path\to\your\directory"
for /f "delims=" %%f in ('dir /b /a-d "%srcdir%\*.*"') do (
type "%srcdir%\%%f" | more +1 | find /v " " > "%srcdir%\temp.txt"
type "%srcdir%\temp.txt" > "%srcdir%\%%f"
)
del "%srcdir%\temp.txt"
该脚本遍历目录中的所有文件,并使用“type”命令将其内容读取到一个管道中。然后使用“more +1”命令删除第一行,再使用“find /v ”命令删除空格(如果需要的话)。最后,再将处理过的内容写入到相同的文件中。
请注意,需要将目录路径替换为您要处理的目录的路径。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网