Dav*_* W. 2 windows console cvsnt batch-file
我正在使用Ant,Java和CVSNT在控制台窗口中的命令行上工作.(Unix极客被迫生活在Windows世界中)
当我运行cvsnt命令时,批处理脚本不再起作用.这包括我使用的几个命令,包括ant和vim.
我可以打开一个新的控制台窗口,在那个窗口中,一切都很好,所以它必须是关于该控制台窗口中特定环境的东西,并且只要我在cvsnt中执行某些操作就会发生这种情况.
有任何想法吗?我应该找什么?
我今天遇到了同样的问题.问题是cvs.exe对代码页做了一些事情.我无法解释什么,但如果你重置代码页,bat文件会再次开始工作.
一个例子可能会使这更清楚(在英国,我的默认代码页是850,但当我的Windows默认为437时会发生同样的事情)
>echo @echo .bat files are working > test.bat
>test.bat
.bat files are working
>chcp
Active code page: 850
>cvs update
? test.bat
cvs update: Updating .
>test.bat
>chcp
Active code page: 850
>test.bat
>chcp 850
Active code page: 850
>test.bat
.bat files are working
>
Run Code Online (Sandbox Code Playgroud)
因此,尽管代码页明显不受影响,但重置它会恢复.bat文件的功能.
若要解决此问题,我因此使用这样的脚本:
@echo off
(
chcp 850 > NUL
"C:\Program Files\CVSNT\cvs.exe" %*
chcp 850 > NUL
)
Run Code Online (Sandbox Code Playgroud)
并通过它调用cvs.如果有人可以评论为什么这个代码页行为正在发生,我最感兴趣的是.
| 归档时间: |
|
| 查看次数: |
969 次 |
| 最近记录: |