bash - Windows cmd 上的 "touch"相当于什么?

标签 bash powershell shell command

<分区>

我正在尝试通过 PowerShell 命令行创建一个 JavaScript .js 文件,但是,当我尝试 echo 时,该文件在我创建后立即消失了。 PowerShell 中是否有等同于 BASH 命令 $ touch 的命令?

Echo Attempt in PowerShell

E7NBB.png

最佳答案

它看起来像您在 PowerShell 中的操作,与 Windows CMD 提示符略有不同。



相当于 Linux 命令的 PowerShell $> touch


PowerShell 中,它们是 Command,一个 Cmdlet,与 < strong>BASH 有一个特定的 Cmdlet 用于创建新文件和目录(以及其他实体)。


PowerShell Cmdlet:$> New-Item


您可以(在大多数情况下)替换 BASH $> touch使用 PowerShell CmdLet 命令 $> New-item在 shell 环境中创建文件时。

PowerShell& 中创建新项目的方式与在 Linux Shell 中有所不同(我在此回答中特别指的是 Bash)。 例如,Windows PowerShell 的 CmdLet $> New-item可以创建不止一种类型的项目——例如,PowerShell 同时创建目录和文件——因此;在 PowerShell 中,您需要指定项目类型。要指定项目类型,您将使用 ItemType 标志 -ItemType <argument> .伪参数是我添加的占位符。实际 -ItemType参数将是 File &/或Directory .




范例 |新文件:


这是被认为是创建新文件标准的 Cmdlet 格式:

    New-Item -Path 'A:\testing\one\two\three.txt' -ItemType File


创建文件, three.txt 目录 two ,文件的完整路径名将是 A:\testing\one\two\three.txt



范例 |新目录:


$> New-item CmdLet 专门用于创建文件和目录。这有点独特,因为 Linux Shell BASH 实现了 $> mkdir命令,但它只生成目录,不生成文件。但是,BASH 表明 SHELL 不必具有专门用于创建文件的命令;这并不是说拥有文件创建命令没有任何好处。但是,在 Windows 中,您可以而且应该使用 New-Item用于创建目录的 CmdLet。

以下是使用 PowerShell 时创建目录的方法:

New-Item -Path 'Z:\sum-directory' -ItemType Directory

此命令创建一个名为 sum-directory 的新目录。该目录位于驱动器号 Z:\,目录的完整路径名将是 Z:\sum-directory



有关此主题的更多信息,请访问:

https://learn.microsoft.com/en-us/powershell/scripting/samples/working-with-files-and-folders?view=powershell-7.1#creating-files-and-folders




关于bash - Windows cmd 上的 "touch"相当于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70205170/

相关文章:

powershell - 命令管道位置的 ForEach-Object 问题

linux - 查找,grep gzipped 文件

c - Shellscript和C程序之间的同步

bash - 引用与执行脚本有关的文件

bash - 将 Azure 中的 ObjectID 转换为显示名称

bash - git bash 立即关闭

powershell - Powershell脚本未从批处理文件触发

node.js - 语法错误 : Invalid or Unexpected Token when running a nodejs file using Visual Studio Code (Using powershell)

linux - 用于终止具有最高 PID 的进程的 Shell 脚本

mysql - bash 中如何解析另一个命令的输入?我们如何重定向错误并传递输入?