提问人:aF. 提问时间:2/20/2012 最后编辑:aF. 更新时间:11/26/2020 访问量:176761
如何在Windows命令提示符下创建ls?
How to create ls in windows command prompt?
答:
您可以:
- 创建一个批处理文件,并使其仅包含命令
ls.bat
dir
- 将文件所在的目录添加到环境变量中
ls.bat
PATH
然后,您可以从命令提示符执行。ls
评论
ls dir
ls.bat
我有一个解决方案,但它很脏:
创建一个名为 ls.bat 的文件,仅包含“dir”。
把它放在 C:\windows\system32(或 PATH env var 中的任何目录)中。
那(应该)有效!
编辑:更一致的东西:https://superuser.com/questions/49170/create-an-alias-in-windows-xp
Vista/7 的 Windows 命令提示符将允许 NTFS 符号链接,以管理员身份运行 cmd.exe,然后:
mklink ls %System%\dir.exe
然后,将 PATH 环境变量设置为包含刚创建的链接的位置。
如果你想要的不仅仅是“ls”命令,你应该看看cygwin。
编辑 - 刚刚意识到dir.exe
不是一个单独的程序,所以这并不真正有效。但是 mklink
和 cygwin 是值得了解的好事。
评论
如果您只想让 cmd 识别为 的别名,则可以使用命令(来自超级用户的这个答案)。ls
dir
doskey
这不会更改 dir 命令的原始命令行参数处理。
您也可以使用 Cygwin,直接使用 ls 命令以及您可能习惯的所有其他 Unix 命令行工具。
你可以用一个简单的命令来解决这个问题:
echo @dir %* > %systemroot%\system32\ls.bat
如果您在 vista 及更高版本上,请确保首先以管理员身份运行cmd.exe
评论
echo cls > %systemroot%\system32\clear.bat
这是一个老问题,但要记录在案:
http://gnuwin32.sourceforge.net/packages/coreutils.htm
给你ls和更多!
评论
ls *
dir *
C:\Program Files (x86)\GnuWin32\bin
我的 ls.bat 在下面
@dir %*
可以传输 CLI 参数
ls /b
ls /w
把它放在 %windir% 或 %PATH% 变量中的任何目录中。
只需确保使用 ANSI 编码保存文件即可:)
当然,ls 不能用作批处理的 unix 命令。如果您检查 %1 的 -l 或 -a 等以及它们的所有组合,它将起作用......
我推荐以下食谱。
- 使用 和 创建命令。
DOSKEY
$*
ls
- 通过将命令记录在 .bat/.cmd 文件中,并将文件的路径添加到注册表中,使命令持久化。
例如,您的命令可能看起来
对采用参数的命令很有用。例如,在这里我喜欢能够做.DOSKEY ls=dir
DOSKEY sublime="C:\Program Files\Sublime Text 2\sublime_text" $*
$*
sublime my_code.c
cmd 的注册表位于 HKEY_CURRENT_USER -> Software -> Microsoft -> Command Processor。使用文件(而不是包含文件夹)的完整路径创建名为 AutoRun 的字符串值条目,例如 .然后每次运行 cmd 时,都会加载您的命令!%USERPROFILE%\custom_command.cmd
您也可以向批处理文件添加更多有用的东西。有关示例模板,请参阅此处。
我发现的最简单的方法是:
- 安装适用于 Windows 的 Git
- 将 Git 的目录添加到 Path 变量中。我的位于.
bin
C:\Program Files\Git\usr\bin
- 启动命令提示符,享受它的所有荣耀。
ls
评论
ls
+1 在上面的帖子中建议安装适用于 Windows 的 git 并将目录 bin 添加到您的路径变量中。
另一种方式是,我在Windows 8和Windows 7机器上使用touch,ls和许多其他UNIX命令在cmd.exe中工作。
转到以下站点以安装 Cygwin
https://www.cygwin.com/install.html
为您的系统安装 32 位或 64 位版本。默认设置和包应包含您需要的内容,因此在进入包屏幕后无需更改任何内容。
安装后,将 Cygwin 文件夹路径复制到环境路径变量中。例如;如果将 cygwin 安装到 C:\Cygwin,则会将以下内容添加到环境系统路径变量中:
;C:\Cygwin\bin
在我的系统上,我安装了 64 位版本,默认文件夹名称和路径是 C:\cygwin64。因此,我在系统环境路径变量中添加了以下内容:
;C:\cygwin64\bin
如果终端处于打开状态,请重新启动终端。然后键入 ls,您将看到一个目录列表。
如果您不熟悉如何设置 PATH 环境变量,请参阅以下内容:
如果您的系统上安装了 Node.js,您可以从 Cash 安装它,这是我为 Windows 上的 Linux 命令编写的库:
npm install cash-ls -g
评论
npm install cash-global -g
ls -l
ll
这是我的 C# 源代码和二进制文件。
只需在某处添加 ls.exe 并将路径添加到路径环境变量即可。
评论
您可以按照以下指南进行操作: https://gist.github.com/vladikoff/38307908088d58af206b
TL;DR:传递给您的“shell startup”命令。/K path/to/custom/init_cmd.bat
我使用 ConsoleZ 作为我的 shell 包装器,所以就我而言,我可以在“tabs”中找到设置选项,然后我将 shell 路径设置为这样。"C:\Windows\System32\cmd.exe "/K C:\cmd_init.bat""
包含我的宏的批处理脚本在哪里,这是我要去的:C:\cmd_init.bat
@echo off
doskey ls=dir /b
rem other macro stuff..
很抱歉格式和其他错误,这是我第一次在这里回答。 希望对您有所帮助!
另一个对我有用的解决方案是使用 UnxUtils,它从可执行文件(包括 、 和 )添加多个实用程序。ls
sed
grep
使用方法:下载源代码。解 压缩。将路径添加到 Windows PATH 变量。启动新的 CMD 实例。UnxUtils\usr\local\wbin
使用适用于 Windows 的 Linux 子系统的人可以从 Linux bash 调用。以下命令在 System32 中创建命令:ls
ls
echo @bash -c "ls %*" > %systemroot%\system32\ls.bat
(必须先启用/安装 Linux 子系统功能)
最简单的方法是
- 安装 git
- 添加到路径变量
C:\Program Files\Git\usr\bin
现在你可以使用ls
使用键在 .bat 或 .cmd 文件中创建别名:doskey
@echo off
title "ls command cmd bar"
doskey ls=echo off $T dir $* $T echo on
享受 =)
评论