当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 PowerShell 中创建空文件 [6 种方法]

作者:精品下载站 日期:2024-12-14 05:24:25 浏览:16 分类:玩电脑

在 PowerShell 中创建空文件 [6 种方法]


[玩转系统] 在 PowerShell 中创建空文件 [6 种方法]

使用 New-Item Cmdlet

使用 New-Item cmdlet 在 PowerShell 中创建一个空的 .txt 文件。

使用新项目 Cmdlet:

New-Item -Path "E:\NewFolder" -Name "File1.txt" -ItemType File

输出 :

    Directory: E:\

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        12/27/2022  10:51 PM              0 EmptyFile.txt

我们使用带有 -Path-Name-ItemType 参数的 New-Item cmdlet 来创建一个空项目使用 Windows PowerShell 的 .txt 文件。让我们分解一下上面的命令以更清楚地理解它。

New-Item cmdlet 创建一个新项目,并通过向文件添加初始内容或数据来设置其值。我们可以使用此 cmdlet 创建不同类型的项目,具体取决于我们用于项目的位置。例如,在 registry 中,New-Item 创建注册表项和密钥,如果我们在 FileSystem 中,则 New-Item -Item 创建文件夹和文件。

-Name 参数用于指定新项目的名称,而 -Path 用于写入新文件所在位置的路径。我们使用 "File1.txt" 作为新项目的名称,使用 "E:\NewFolder" 作为位置的路径。

请记住,如果我们不使用 -Path 参数,New-Item cmdlet 会将新创建的文件保存在当前目录中。我们可以在 -Name-Path 参数中写入新项目的名称。请参阅以下示例。

在-Path参数中写入文件名:

New-Item -Path "E:\NewFolder\File1.txt" -ItemType File

在-Name参数中写入FileName:

New-Item -Path "E:\NewFolder" -Name "File1.txt" -ItemType File

请注意,我们使用 -Name 参数传递的新项目的名称将相对于 -Path 参数的值创建。对于 New-Item cmdlet,-Path 的行为与其他 cmdlet 的 LiteralPath 参数类似。

值得注意的是,通配符不会被解释。因此,例如,我们无法创建名称中包含星号 (*) 的 .txt 文件。

-ItemType 参数用于指定新项目的类型。现在,我们可以对这个参数使用什么值?这取决于当前的提供商。例如,如果我们位于 FileSystem 中的位置,那么我们可以使用 FileDirectorySymbolicLink >、JunctionHardLink 作为 -ItemType 参数的值。

使用 ni 别名

使用 ni 在 PowerShell 中创建一个空的 .txt 文件。

使用别名:

ni -Path "E:\NewFolder" -Name "File2.txt" -ItemType File

输出 :

    Directory: E:\NewFolder

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        12/28/2022  12:14 AM              0 File2.txt

ni 并不是不同的 cmdlet,而是 New-Item 的内置别名,并且与 New-Item 一样工作。您可以返回上一节来了解 New-Item cmdlet、其参数及其工作原理。

正如我们所看到的,我们在上面的输出中得到了一些信息文本,包括模式、长度、文件名和上次更新日期/时间。如果我们想避免获取此类信息而只关心文件的创建怎么办?在这种情况下,以下解决方案将适合我们。

使用 Out-File Cmdlet

使用 Out-File cmdlet 在 PowerShell 中创建一个空文件 (.txt)。

使用输出文件 Cmdlet:

Out-File -FilePath "File3.txt"

在这里,我们使用带有 -FilePath 参数的 Out-File cmdlet 创建一个不带内容的 .txt 文件。我们也可以使用这个命令Out-File -FilePath "E:\NewFolder\File3.txt"来指定路径;否则,File3.txt 将在当前目录中创建。

Out-File 的主要用途是将输出(从前一进程接收到)发送到文件。请看下面的示例,其中我们使用 Get-Process cmdlet 获取所有当前正在运行的进程的详细信息,并使用管道符 (|)。

现在,Out-File 会将接收到的数据写入指定的文本文件,我们可以使用 Get-Content cmdlet 在 PowerShell 上打印。请注意,Out-File 将创建 File3.txt 文件(如果该文件尚不存在)。

使用输出文件 Cmdlet:

Get-Process | Out-File -FilePath "File3.txt"
Get-Content -Path ".\File3.txt"

输出 :

Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName
-------  ------    -----      -----     ------     --  -- -----------
    165       9     2532       2808              2376   0 AdminService
    426      24    19724      19752       2.16  10712  27 ApplicationFrameHost

现在,想想 Out-File,我们不向文件写入任何内容。不向文件写入任何内容是什么意思?这意味着我们使用 $null 传递 null ,如下所示。这里,$null 是一个自动变量,在 PowerShell 中表示 null

将 Out-File 与 $null 一起使用:

$null | Out-File -FilePath "File3.txt"
Get-Content -Path ".\File3.txt"

对于上述代码,Get-Content cmdlet 将不显示任何内容,因为 File3.txt 文件为空。您是否认为如果我们没有在 File3.txt 文件中写入任何内容,那么为什么不创建一个不写入任何内容的文件呢?

是的,你没看错!因此,我们可以省略 $null 变量并使用 Out-File 来创建一个空的 .txt 文件。

使用输出文件 Cmdlet:

Out-File -FilePath "File3.txt"

使用 fsutil file 命令

使用 fsutil file 命令在 PowerShell 中创建一个空的 .txt 文件。

使用 fsutil 文件命令:

fsutil file createnew "File4.txt" 1000

输出 :

File E:\File4.txt is created

我们使用 fsutil file 命令在当前目录中创建一个空的 File4.txt 文件。我们使用此命令是因为我们必须在创建文件时指定文件的长度。请记住,如果缺少 length 参数的值(在我们的示例中,length 1000)。

请注意,fsutil file 命令可以执行多种操作;例如,根据传递的参数,可以通过用户名查找文件、设置文件的短名称、设置文件的有效数据长度、创建新文件等。

例如,在我们的示例中,由于使用了 createnew 参数,fsutil 文件 创建了一个空文本文件。另一方面,如果与 findbyid 参数一起使用,它可以查找属于特定用户的文件。

上述代码片段中的最后一个数值(1000)用于length参数,该参数用于指定文件的有效数据长度。

使用文本编辑器

使用 PowerShell 中的文本编辑器创建一个空的 .txt 文件。

在 PowerShell 中使用文本编辑器:

notepad "File5.txt"

编写上述命令后,一旦我们按下 Enter 键,就会创建并打开一个空的 File5.txt (如果它不存在)。我们使用 notepad 作为文本编辑器;您可以使用您的任何选择,例如 nanovim 等。

使用 echo 命令

在 PowerShell 中使用带有大于号 (>) 的 echo 命令创建一个空的 .txt 文件。

使用 echo 命令:

echo "" > "File6.txt"

echo 的主要用途是写入,但我们正在将空字符串写入文件。这是最基本的命令,适合学习目的,但不建议用于需要创建全新但空文件的专业用途。

因此,我们学习了在 PowerShell 中创建空 .txt 文件的各种方法,但所有方法都集中于创建单个文件。那么,让我们学习如何使用 for 循环来创建 n 个空文本文件。

使用 for 循环

要在 PowerShell 中创建空文本文件:

  • 使用 for 循环,从 1(含)到 11(不含)进行迭代。
  • 创建一个包含路径和文件名的变量。
  • 使用 New-Item cmdlet 创建一个空文本文件。

使用 for 循环:

for($i = 1; $i -lt 11; $i++){
    $path = "E:\File{0:00}.txt" -f $i
    New-Item -Path $path
}

输出 :

    Directory: E:\

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        12/28/2022   2:00 AM              0 File01.txt
-a----        12/28/2022   2:00 AM              0 File02.txt
-a----        12/28/2022   2:00 AM              0 File03.txt
-a----        12/28/2022   2:00 AM              0 File04.txt
-a----        12/28/2022   2:00 AM              0 File05.txt
-a----        12/28/2022   2:00 AM              0 File06.txt
-a----        12/28/2022   2:00 AM              0 File07.txt
-a----        12/28/2022   2:00 AM              0 File08.txt
-a----        12/28/2022   2:00 AM              0 File09.txt
-a----        12/28/2022   2:00 AM              0 File10.txt

对于此示例,我们用于循环遍历给定范围,即 111,其中不包括 11。接下来,我们创建了一个 $path 变量,它保存使用 -f 运算符格式化的位置路径和文件名。

此处,格式化运算符 (-f) 用于连接字符串与 $i 变量的值。最后,我们使用第一部分中讨论的 New-Item cmdlet 来创建一个新的文本文件。

这就是如何在 PowerShell 中创建空文件的全部内容。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯