生活智库网
白蓝主题五 · 清爽阅读
首页  > 亲子教育

用bash脚本帮孩子批量修改作文格式,省时又省心

家里孩子上小学后,老师经常布置电子版作文作业。每次写完,总要在格式上花不少时间:标题居中、段落首行缩进、统一标点符号……作为家长,改一次两三次还行,次数多了真有点吃不消。

前阵子我琢磨了个小办法,用几行bash脚本自动完成文本替换,批量处理孩子的作文文件,几分钟搞定以前半小时的活儿。比如把所有全角逗号换成半角,或者给每段开头加上两个空格,都可以一键完成。

最简单的文本替换命令

Linux和macOS自带的sed命令就能实现文本替换。比如要把文件里所有的“。”换成“~”,可以这样写:

sed -i 's/。/~/g' zuowen.txt

这里的 s/。/~/g 意思是“查找所有‘。’并替换成‘~’”,-i 表示直接修改原文件。如果不想改原文件,可以去掉 -i,结果会输出到屏幕上。

批量处理多个文件

孩子一个学期写了十几篇作文,总不能一个个改。写个简单循环就行:

for file in *.txt; do
  sed -i 's/^/  /' "$file"
done

这段脚本会遍历当前目录下所有 .txt 文件,在每一行前面加两个空格。比如孩子写作文没缩进,运行一下就整齐了。

实际应用场景

有一次老师要求把所有“妈妈”改成“母亲”,我直接用了这行:

sed -i 's/妈妈/母亲/g' *.txt

十来个文件,一秒完成。孩子在旁边看得直拍手,还说“爸爸你这比Word快多了”。

其实这些操作不难,装个Mac或用Windows的WSL都能跑。平时教孩子打字、写作文的时候,顺便让他看看这些小脚本怎么工作,也算是一种潜移默化的逻辑训练。

现在我家娃写完作文,自己都会问:“要不要跑一下爸爸的那个替换脚本?”