求助,批量修改文本文档
最近想整理自己的笔记,想把层级目录改成用tag分类。因此,原来的旧笔记就全部需要加入tag。现在的情况是这样:文件全部归类放在文件夹里,需要把同一个目录里面的所有文件(md文本文件)尾部加上一串字符串。虽然知道这个应该自己写段小代码就能解决,但是无奈毫无编程基础请问有现成的工具可以用吗? linux(或者wsl1)还是windows 别整没用的,淘宝十块钱写个bat拉倒 nexus1 发表于 2021-3-30 10:11
别整没用的,淘宝十块钱写个bat拉倒
也是,我去白嫖下学计算机的朋友好了
—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1 Nanachi 发表于 2021-3-30 10:04
linux(或者wsl1)还是windows
win
—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1 dropit之类应该可以 加到文件名? BatchRenamePro
suffix 一个 Parent Folder Name
如果文件夹也是嵌套的就把文件夹也重命名了。 sed
— from Xiaomi MIX 2S, Android 10 of S1 Next Goose v2.4.4 微软官方的PowerToys好像有这个功能
文件名和目录名没有特殊符号的话,PowerShell写个脚本就行了。不过好久没写,忘记了 本帖最后由 当光停止 于 2021-3-30 12:54 编辑
在md文件内容末尾加字符串吗?新建一个文件写你要加的内容。遍历文件夹内以.md结尾的文件,把这些文件和你刚新建的文件拼接下就好。
网上搜下代码稍微改改就行。
来点具体的例子?目录长啥样?要加的字符串是固定的还是跟目录相关的还是怎么着?
简单的话两三行bat就给你搞定。 听起是文本文件追加内容。楼上有人说的是文件名修改。不太对吧
还是没有听明白。是吧当前文件夹名追加到文本文件末尾吗? YoumuChan 发表于 2021-3-30 14:21
来点具体的例子?目录长啥样?要加的字符串是固定的还是跟目录相关的还是怎么着?
简单的话两三行bat就给你 ...
理想状态是把当前文件夹的名字加上“#”追加到文件末尾。因为是学日语的笔记所以文件夹名称包含汉字和假名
—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1 xy2401 发表于 2021-3-30 14:24
听起是文本文件追加内容。楼上有人说的是文件名修改。不太对吧
还是没有听明白。是吧当前文件夹名追加到文 ...
是的,当前文件夹名追加到文件内容里面。文件名不能改,不然我笔记里面的双向链接估计全部要乱套
—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1 还得是pwsh core...
你多给点信息估计楼上都做完作业了... 还是上linux shell吧。感觉一行解决不了。
至少要5行 Python3 发表于 2021-3-30 15:57
copyaddmd.py 源文件夹 末部添内容文件 目标文件夹
例如:
D:\Python\Project02\copyjpg>copyaddmd.py D:\t ...
第一次看到Python侠写了段有实际使用价值的代码。 惊了 感谢各位这么积极,不过看得我有点晕了23楼的代码装上Python环境之后复制下来写成py脚本就能直接用吗
—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1 最好先备份
python侠用的难道是python2?普通的open里面有编码参数的,codecs.open基本不用了 这有个软件,你试试行不行。
https://www.shuimiao.net/FileBat/
易语言写的,可能会报毒。 Jumbohard 发表于 2021-3-30 15:02
理想状态是把当前文件夹的名字加上“#”追加到文件末尾。因为是学日语的笔记所以文件夹名称包含汉字和假 ...
@echo off
chcp 65001
call :process_dir
goto :eof
:process_dir
for %%I in (.) do set dir_name=%%~nxI
echo entering directory %dir_name%
for %%f in (*.md) do (
echo appending to %%f
echo %dir_name%# >> %%f
)
for /D %%d in (*) do (
cd %%d
call :process_dir
cd ..
)
exit /b
保存成bat文件在根目录运行就行了 本帖最后由 风夏 于 2021-3-31 14:12 编辑
处理了一下文件编码问题...默认你markdown编码UTF8了
-----------------
把exe文件放到你md目录,双击....
比如这个目录结构,就把exe放到untitled下
执行之前备份下
import _locale
_locale._getdefaultlocale = (lambda *args: ['en_US', 'utf8'])
python在Windows环境下直接读文本会有编码问题,网上说这段代码可以处理 YoumuChan 发表于 2021-3-31 01:50
保存成bat文件在根目录运行就行了
谢谢,成了。不过你这个稍微理解上出了点问题,应该是我没有表述清楚。
tag的格式是#<tag_name>,“#”在tag前面。不过我自己改了下11行就好了 风夏 发表于 2021-3-31 09:10
处理了一下文件编码问题...默认你markdown编码UTF8了
-----------------
谢谢,能用了。不过#和<tag名称>之间是没有空格的,有了空格就成了标题1了。 Python3 发表于 2021-3-30 15:57
copyaddmd.py 源文件夹 末部添内容文件 目标文件夹
例如:
D:\Python\Project02\copyjpg>copyaddmd.py D:\t ...
试了一下,并没有添加内容,倒是把文件全部复制到目标目录了。是因为文件夹名是中文吗?
页:
[1]