Linux 命令在 Windows 里的等价实现

Windows 使用技巧 专栏收录该内容
6 篇文章 0 订阅

前言

很多人在吐槽 Windows 的命令行不好用,事实的确如此。但是,批评 Windows 命令行功能不强大,我不认同。本文将持续更新,介绍一些常见的 Linux 命令功能在 Windows 环境的等价实现。

ls

Linux 的 ls 命令很强大,也很美观,在 Windows 里一种十分勉强的实现方式是

dir /b

但是这样区分不出文件和文件夹,可以用 dir /b /ad 列出文件夹,用 dir /b /a-d 列出文件。Linux 的 ls 可以分列,这个功能在 Windows 可以用 PowerShellFormat-Wide 实现。

然后需要实现的是用不同颜色区分文件和目录我粗略的写了一个程序(Github Project) 勉强实现了分列显示和用颜色区分文件和目录,其实调用 Windows 的 API 完全可以写出一个和 Linux 的 ls 一模一样的程序来。但是 Windows 的用户已经习惯右键查看文件属性,因此没人去写这个程序。

需要强调的是,从 dir /? 可以看出,这个命令的功能很完整,只是输出的结果不好看而已。

pwd

查看当前目录的完整路径,等价

cd

或者

echo %CD%

realpath

查看文件的完整路径

echo %CD%\<filename>

或者

forfiles /M <filename> /c "cmd /ce echo @path"

遍历指定类型文件

例如:以完整路径列出所有txt文件

forfiles /S /M *.txt /c "cmd /c echo @path"

或者

for /r . %i in (*.txt) do echo %i

相对路径则是

forfiles /S /M *.txt /c "cmd /c echo @relpath"

使用 for 命令也可以实现,但不如上面这条命令简单。这个功能我遇到的使用场景是需要把工程目录的所有 Verilog 源文件列举出来生成文件列表给仿真器使用。Linux 里使用 find 可以做到。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

参与评论 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:书香水墨 设计师:CSDN官方博客 返回首页

打赏作者

k1435

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值