0%

Powershell常用命令使用手册

  1. 1. rm命令
  2. 2. cp命令
  3. 3. 操作满足条件的文件

1. rm命令

Remove-Item,主要用于删除文件或文件夹,基本用法:

1
rm example.exe  # 删除example.exe文件
  • 删除所有文件:rm *
  • 删除满足通配符条件的部分文件:rm * -include *.docrm *.doc
  • 删除满足多个通配符条件的文件:rm * -include *.doc,*.xlsrm *doc,*.xls(通配符用逗号隔开)
  • 删除不满足条件的文件:rm * -exclude *.doc,*.xls
  • 删除文件夹:rm -recurse tmprm -r tmp(递归参数-r,否则文件夹非空时需要手动确认)

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/remove-item?view=powershell-7.1

2. cp命令

Copy-item,主要用于复制文件或文件夹:

1
cp * C:/tmp  # 将当前目录下所有文件复制到C:\tmp文件夹中

若目标文件夹不存在,则会将其作为文件处理,导致出错,因此在复制到文件夹时,应该保证文件夹存在。

  • 将一个文件复制为另一个文件:cp C:/tmp/aaa.exe C:/tmp_1/bbb.exe
  • 将一个文件复制到文件夹下:cp aaa.exe C:/tmpcp aaa.exe ../tmp
  • 对文件进行筛选复制:cp * ../tmp -include *.execp *.exe ../tmp
  • 排除某些文件复制:cp * ../tmp -exclude *.exe,*.xls,*.doc

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/copy-item?view=powershell-7.1

3. 操作满足条件的文件

1
2
3
4
5
Get-Childitem  # 查看所有文件,同 ls
Get-Childitem | Where Length -eq 140 # 查找长度等于140字节的文件
Get-Childitem | Where-Object {$_.Length -eq 140}
Get-Childitem | Where-Object {$_.Name -Match "^*321^*" -and $_.Length -eq 140} # 多条件用-and连接
Get-Childitem | Where-Object {$_.Length -eq 140} | ForEach-Object {Remove-Item $_.Name} # 删除长度等于140字节的文件

-eq 等于

-Match 加正则表达式,全字匹配

-gt, -ge 大于,大于等于

-lt, -le 小于,小于等于

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/where-object?view=powershell-7.1