bash 脚本 "ignores" .vimrc

bash script "ignores" .vimrc

我遇到的问题如下:

我有一个脚本可以从远程机器复制日志文件,对其进行一些修改,然后在 vim 中打开它,问题是 vim 无法自动识别文件类型 (脚本 ID 之外的那个)——我需要这个来为日志着色。

脚本如下:

/usr/bin/rcp 14.1.61.10$node:/output/LocalLog_IPNode$node.log /export/home/fpd/tmp/tmp_local_log

chmod 777 /export/home/fpd/tmp/tmp_local_log/*

sed -i 's/[A-Z]\{4,8\}.*[oigus][kbdct][sel]\//---/g' /export/home/fpd/tmp/tmp_local_log/LocalLog_IPNode$node.log
vi  /export/home/fpd/tmp/tmp_local_log/LocalLog_IPNode$node.log

我的.vimrc:

au BufNewFile,BufReadPost LocalLog* set filetype=local_log

请注意,文件在 vim 中打开(如果它有助于手动命令 ":set syntax=local_log" 也不起作用)。

退出脚本并手动打开日志后一切正常=(

您的问题是 autocommand 选项仅在 vim 中可用,在 vi 中不可用。

因此,如果这在您的系统上可用,您应该将最后一个命令行替换为:

 vim  /export/home/fpd/tmp/tmp_local_log/LocalLog_IPNode$node.log

Vim代表"Vi Improved",很多选项只有后者才有。

为了确保你能做到:

:help autocommand

如果该功能与 vi 或 vim 兼容,它总是被提及。