请教: window7 与 archlinux 关于 GBK 编码的转换

我在 window7 下用 虚拟机中的 archlinux, 共享出一个目录到 archlinux 中, 想用 emacs 来操作:

把此目录下的所有文件 GBK 转换为 UTF-8, 以下这2个命令都用了, 不行

因为这个目录中的文件是从 excel vba 导出的, 有几个文件 它俩不认识, 只认 emacs china-gbk-dos

  1. iconv 命令转换 gbk 编码为 UTF-8 编码

  2. enca 更简单的命令, iconv 只能单个文件转换

用了这里的命令, 可以完成, 但是总是要确认, 我有 30来个文件, 不会每个都要 Y 下吧

(defun to-unix-eol (fPath)
  "Change file's line ending to unix convention."
  (let (myBuffer)
    (setq myBuffer (find-file fPath))
    (revert-buffer-with-coding-system 'chinese-gbk-dos) ;; 这我加的
    (set-buffer-file-coding-system 'utf-8-unix nil)
    (save-buffer)
    (kill-buffer myBuffer)
))

我加了这行, 才行

    (revert-buffer-with-coding-system 'chinese-gbk-dos) ;; 这我加的

按照这个网页的说法, 可以转换, 但是 每次总要提示 Y/N, 有什么办法可以, 强制, 不用确认 上面说明了下, shell 并没解决, 因为有 几个文件不认

试了大半天了 确认是这个函数引起的,

 (revert-buffer-with-coding-system 'gbk-dos')

Revert buffer from file /home/zhua/notes/projects/pj_a_temp/tbl_DB.bas? (y or n) y

因为一次约有 20来个文件 要转, 现在都要一一确认,

那位能指点下, 有没有 什么办法 只确认1次, 或者干脆 不要提示了

  (setq revert-without-query t)

看看可不可以从源头就生成 utf-8,编码出问题太让人头疼了。

看来还是, 手动把源头, 统一了, 就可以用 iconv 来批量转了