在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
- 解读Neo4j全新的Python驱动程序
- MySQL 5.7 X Plugin:流水线技术vs.并行查询技术
- 在下函数式编程,有何贵干?
- 基于Keras/Python的深度学习模型Dropout正则项
- 揭秘深度强化学习
- Swoole-2.0.1-Alpha 已发布,提供PHP原生协程支持
- Google核心技术之——PageRank算法scala实现
- 代码审查拯救世界?
- Kafka实战:从RDBMS到Hadoop,七步实现实时传输
- Apache NiFi 1.0.0测试版:邮件路由应用新型ListenSMTP
- 为什么我坚持使用 JavaScript 函数声明
- NewSQL数据库大对象块存储原理与应用
- 使用xUnit为.net core程序进行单元测试(下2)
- MongoDB + Spark: 完整的大数据解决方案
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法