找回密码
 立即注册
搜索
查看: 3094|回复: 38

[软件] 求助,批量修改文本文档

[复制链接]
     
发表于 2021-3-30 10:03 | 显示全部楼层 |阅读模式
最近想整理自己的笔记,想把层级目录改成用tag分类。因此,原来的旧笔记就全部需要加入tag。
现在的情况是这样:文件全部归类放在文件夹里,需要把同一个目录里面的所有文件(md文本文件)尾部加上一串字符串。虽然知道这个应该自己写段小代码就能解决,但是无奈毫无编程基础请问有现成的工具可以用吗?
回复

使用道具 举报

     
发表于 2021-3-30 10:04 | 显示全部楼层
linux(或者wsl1)还是windows
回复

使用道具 举报

     
发表于 2021-3-30 10:11 | 显示全部楼层
别整没用的,淘宝十块钱写个bat拉倒
回复

使用道具 举报

     
 楼主| 发表于 2021-3-30 11:45 来自手机 | 显示全部楼层
nexus1 发表于 2021-3-30 10:11
别整没用的,淘宝十块钱写个bat拉倒

也是,我去白嫖下学计算机的朋友好了

—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
 楼主| 发表于 2021-3-30 11:45 来自手机 | 显示全部楼层
Nanachi 发表于 2021-3-30 10:04
linux(或者wsl1)还是windows

win

—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
发表于 2021-3-30 12:00 | 显示全部楼层
dropit之类应该可以
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 12:16 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-30 12:22 | 显示全部楼层
加到文件名? BatchRenamePro

suffix 一个 Parent Folder Name

如果文件夹也是嵌套的就把文件夹也重命名了。
回复

使用道具 举报

     
发表于 2021-3-30 12:22 来自手机 | 显示全部楼层
sed

— from Xiaomi MIX 2S, Android 10 of S1 Next Goose v2.4.4
回复

使用道具 举报

     
发表于 2021-3-30 12:27 | 显示全部楼层
微软官方的PowerToys好像有这个功能
文件名和目录名没有特殊符号的话,PowerShell写个脚本就行了。不过好久没写,忘记了
回复

使用道具 举报

     
发表于 2021-3-30 12:40 | 显示全部楼层
本帖最后由 当光停止 于 2021-3-30 12:54 编辑

在md文件内容末尾加字符串吗?新建一个文件写你要加的内容。遍历文件夹内以.md结尾的文件,把这些文件和你刚新建的文件拼接下就好。
网上搜下代码稍微改改就行。
回复

使用道具 举报

     
发表于 2021-3-30 14:21 | 显示全部楼层
来点具体的例子?目录长啥样?要加的字符串是固定的还是跟目录相关的还是怎么着?
简单的话两三行bat就给你搞定。
回复

使用道具 举报

     
发表于 2021-3-30 14:24 | 显示全部楼层
听起是文本文件追加内容。楼上有人说的是文件名修改。不太对吧
还是没有听明白。是吧当前文件夹名追加到文本文件末尾吗?
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 14:26 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
 楼主| 发表于 2021-3-30 15:02 来自手机 | 显示全部楼层
YoumuChan 发表于 2021-3-30 14:21
来点具体的例子?目录长啥样?要加的字符串是固定的还是跟目录相关的还是怎么着?
简单的话两三行bat就给你 ...

理想状态是把当前文件夹的名字加上“#”追加到文件末尾。因为是学日语的笔记所以文件夹名称包含汉字和假名

—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

     
 楼主| 发表于 2021-3-30 15:04 来自手机 | 显示全部楼层
xy2401 发表于 2021-3-30 14:24
听起是文本文件追加内容。楼上有人说的是文件名修改。不太对吧
还是没有听明白。是吧当前文件夹名追加到文 ...

是的,当前文件夹名追加到文件内容里面。文件名不能改,不然我笔记里面的双向链接估计全部要乱套

—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 15:22 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 15:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-30 15:35 | 显示全部楼层
还得是pwsh core...
你多给点信息估计楼上都做完作业了...
回复

使用道具 举报

     
发表于 2021-3-30 15:40 | 显示全部楼层
还是上linux shell吧。感觉一行解决不了。
至少要5行
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 15:42 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 15:54 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 15:57 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-30 16:01 | 显示全部楼层
Python3 发表于 2021-3-30 15:57
copyaddmd.py 源文件夹 末部添内容文件 目标文件夹
例如:
D:\Python\Project02\copyjpg>copyaddmd.py D:\t ...

第一次看到Python侠写了段有实际使用价值的代码。 惊了
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 16:07 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
 楼主| 发表于 2021-3-30 16:44 来自手机 | 显示全部楼层
感谢各位这么积极,不过看得我有点晕了23楼的代码装上Python环境之后复制下来写成py脚本就能直接用吗

—— 来自 Xiaomi M2006J10C, Android 11上的 S1Next-鹅版 v2.4.4.1
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 16:46 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2021-3-30 16:50 来自手机 | 显示全部楼层
最好先备份


python侠用的难道是python2?普通的open里面有编码参数的,codecs.open基本不用了
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-30 17:43 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2021-3-30 22:07 | 显示全部楼层
这有个软件,你试试行不行。

https://www.shuimiao.net/FileBat/

易语言写的,可能会报毒。
回复

使用道具 举报

     
发表于 2021-3-31 01:50 | 显示全部楼层
Jumbohard 发表于 2021-3-30 15:02
理想状态是把当前文件夹的名字加上“#”追加到文件末尾。因为是学日语的笔记所以文件夹名称包含汉字和假 ...
  1. @echo off
  2. chcp 65001
  3. call :process_dir
  4. goto :eof

  5. :process_dir
  6. for %%I in (.) do set dir_name=%%~nxI
  7. echo [dir] entering directory %dir_name%
  8. for %%f in (*.md) do (
  9.     echo [file] appending to %%f
  10.     echo %dir_name%# >> %%f
  11. )

  12. for /D %%d in (*) do (
  13.     cd %%d
  14.     call :process_dir
  15.     cd ..
  16. )
  17. exit /b
复制代码

保存成bat文件在根目录运行就行了
回复

使用道具 举报

     
发表于 2021-3-31 09:10 | 显示全部楼层
本帖最后由 风夏 于 2021-3-31 14:12 编辑

untitled.7z (1.64 MB, 下载次数: 5)
处理了一下文件编码问题...默认你markdown编码UTF8了

-----------------

把exe文件放到你md目录,双击....

Snipaste_2021-03-31_09-04-45.jpg

比如这个目录结构,就把exe放到untitled下
执行之前备份下
回复

使用道具 举报

     
发表于 2021-3-31 09:16 | 显示全部楼层
  1. import _locale
  2. _locale._getdefaultlocale = (lambda *args: ['en_US', 'utf8'])
复制代码


python在Windows环境下直接读文本会有编码问题,网上说这段代码可以处理
回复

使用道具 举报

     
 楼主| 发表于 2021-3-31 21:17 | 显示全部楼层
YoumuChan 发表于 2021-3-31 01:50
保存成bat文件在根目录运行就行了

谢谢,成了。不过你这个稍微理解上出了点问题,应该是我没有表述清楚。
tag的格式是#<tag_name>,“#”在tag前面。不过我自己改了下11行就好了
回复

使用道具 举报

     
 楼主| 发表于 2021-3-31 21:19 | 显示全部楼层
风夏 发表于 2021-3-31 09:10
处理了一下文件编码问题...默认你markdown编码UTF8了

-----------------

谢谢,能用了。不过#和<tag名称>之间是没有空格的,有了空格就成了标题1了
回复

使用道具 举报

     
 楼主| 发表于 2021-3-31 21:20 | 显示全部楼层
Python3 发表于 2021-3-30 15:57
copyaddmd.py 源文件夹 末部添内容文件 目标文件夹
例如:
D:\Python\Project02\copyjpg>copyaddmd.py D:\t ...

试了一下,并没有添加内容,倒是把文件全部复制到目标目录了。是因为文件夹名是中文吗?
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-31 21:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-31 21:34 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

头像被屏蔽
     
发表于 2021-3-31 21:43 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-11-14 05:21 , Processed in 0.125234 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表