在Windows CMD里“使用”常见Linux命令

时间:2022-07-22
本文章向大家介绍在Windows CMD里“使用”常见Linux命令,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

相信不少小伙伴都曾经用过/偶尔使用Windows下的命令行终端(可按键盘组合键win+R然后输入cmd启动)

这里面需要使用DOS命令来操作。下表列举了一些常见DOS命令,以及含义与之对应的Linux命令。

Linux命令

DOS命令

ls

dir

vi

输文件名按回车即打开

cd

cd (可换目录不能换盘符)

pwd

cd (不带参数)

cp

copy

clear

cls

mv

rename或move

rm

del

$1 (命令行参数)

%1

touch (建空文件)

cd .>

尽管知晓了常见命令,但是笔者在使用时还是经常下意识、第一反应就敲出ls、mv等命令,结果当然是无法识别,还要在脑子里转个弯转换一下。于是就想着能否让这些常见Linux命令在DOS中兼容。查了下ls的替代方式[1],发现答案很简单:可通过创建批处理文件(.bat)来伪装出这个Linux命令,于是其他的也容易写出来:

ls.bat(以下代码是文件内容,仅2行)

@echo off
dir

其中@echo off表示关闭回显,简单说就是输入ls就出命令结果。如果不写这句的话会先出现一行文件内容dir,然后才显示命令结果。

vi.bat

@echo off
%1

cp.bat

@echo off
copy %1 %2

mv.bat

@echo off
move %1 %2

rm.bat

@echo off
del %1

注意:这不会进入回收站,而是直接被删掉(这效果就真的与Linux下rm一样了)。提醒大家无论在哪个平台下:数据无价,谨慎操作。

touch.bat

@echo off
cd .> %1

其他命令类似,就不一一列出了。写完后将这些.bat文件放到C:WindowsSystem32目录下(需要管理员权限),再进入CMD就可以使用这些命令了。当然,这种方式省略了Linux命令的很多高级功能,只能算做最简陋的代替。

倘若再结合Win下的make使用[2],就更像在linux下操作了,使用起来十分顺手。写本篇的起因是因为笔者想在Visual Studio的Fortran子例程system()中使用make、mv及cp等命令,这些代码和文件是在Linux下事先写好的,移植到Win下不想改动之,于是便萌生出了使这些命令在CMD里兼容的想法。

参考来源

[1] https://blog.csdn.net/qq_33413264/article/details/77018528

[2] http://gnuwin32.sourceforge.net/packages/make.htm