换用 Hexo 之后发现 _post
目录里面乱乱的,比如从 WordPress 中导入的中文标题文章的文件名会变成乱乱的字符串,看着很难受。所以搞了个改名的脚本来重命名文件。
重命名之后的格式为PO文日期.文章标题.md
,如果文件内有注明urlname
的话就是PO文日期.文章标题.urlname.md
。
还有一件事很重要,就是**`_config.yml` 里面 `permalink:` 的 `:title` 指的是文件名,不是文章标题**。
rename.sh1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| #!/bin/bash
SAVEIFS=$IFS
IFS=$'\n'
for filename in *.md; do title=$(grep "title: " $filename | head -1 | sed -e 's/title: //g; s#/##g;s/ /_/g') date=$(grep "date: " $filename | awk 'NR==1{printf $2}' ) link=$(grep "urlname: " $filename | head -1 | sed 's/urlname: //g' ) if [ -z "$link" ]; then newname="$date.$title.md" else newname="$date.$title.$link.md" fi if [ "$filename" != "$newname" ]; then echo "Rename $filename to $newname" mv $filename $newname fi done
echo done!
|
这样就舒服好多了。