抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

PowerShell入门指南(二)·挑战CMD和Bash的PowerShell

作为CMD/Bash的代替使用

如果你想把PowerShell当作原来的CMD命令行使用是完全可以的,甚至还有部分Bash的语法可以使用


PowerShell 命令 PowerShell 简称 CMD 命令 UNIX 命令 描述
Get-ChildItem gci,dir,ls dir ls 显示当前目录下的所有文件和文件夹
Test-Connection ping ping ping 向目标站点发送一个ICMP接受响应,检查网络连通性
Get-Content gc,type,cat type cat 获取文件内容
Get-Command gcm help type, which, compgen 列出可用的命令
Get-Help help,man help apropos,man 在控制台列出命令的使用文档
Clear-Host cls,clear cls clear 清除屏幕内容
Copy-Item cpi,copy,cp copy,xcopy,robocopy cp 拷贝文件/文件夹到指定位置
Move-Item mi,move,mv move mv 移动文件/文件夹到新位置
Remove-Item ri,del,erase,rmdir,rd,rm del,erase,rmdir,rd rm,rmdir 删除文件/文件夹
Rename-Item rni,ren,mv ren,rename mv 重命名文件/文件夹
Get-Location gl,cd,pwd cd pwd 显示当前工作目录
Pop-Location popd popd popd 将工作路径更改为最近压入堆栈的位置
Push-Location pushd pushd pushd 将工作路径存储到堆栈上
Set-Location sl,cd,chdir cd,chdir cd 更改当前工作目录
Tee-Object tee 不支持 tee 将输入通过管道传递到文件或变量
Write-Output echo,write echo echo 将字符或其他对象输出到标准输出流上
Get-Process gps,ps tlist,tasklist ps 列出当前全部进程
Stop-Process spps,kill kill,taskkill kill 终止指定进程
Select-String sls findstr find,grep 打印匹配的字符行
Set-Variable sv,set set env,export,set,setenv 创建或更改环境变量的内容
Invoke-WebRequest iwr,curl,wget[^1] 不支持 wget,curl 从Internet上的网页获取内容

[^1]:curl和wget不在PowerShell Core中,因此不会干扰调用非Windows操作系统的同名组件。


功能键和快捷键

先来了解一下功能键和快捷键

  • ALT+F7 清除命令的历史记录
  • PgUp PgDn 显示当前会话的第一个命令和最后一个命令
  • Enter 执行当前命令
  • End 将光标移至当前命令的末尾
  • Del 从右开始删除输入的命令字符
  • Esc 清空当前命令行
  • F2 自动补充历史命令至指定字符
    (例如历史记录中存在Get-Process,按F2,提示”Enter char to copy up to”,键入 S,自动补齐命令:Get-Proce)
  • F4 删除命令行至光标右边指定字符处
  • F7 对话框显示命令行历史记录
  • F8 检索包含指定字符的命令行历史记录
  • F9 根据命令行的历史记录编号选择命令,历史记录编号可以通过F7查看
  • / 左右移动光标
  • / 切换命令行的历史记录
  • Home 光标移至命令行最左端
  • Backspace 从右删除命令行字符
  • Ctrl+C 取消正在执行的命令
  • Ctrl+/ 在单词之间移动光标
  • Ctrl+Home 删除光标最左端的所有字符
  • Tab 自动补齐命令或者文件名

数值计算

我们可以把powershell当成一个计算器。象键入命令行那样输入数学表达式,回车,powershell会自动计算并把结果输出。常用的加减乘除模(+,-,*,/,%)运算和小括号表达式都支持。

1
2
3
4
5
6
7
8
PS C:/pstest> 1+2+3
6
PS C:/pstest> 0xABCD
43981
PS C:/pstest> 3.14*10*10
314
PS C:/pstest> 1+3-(2.4-5)*(7.899-4.444)
12.983

PowerShell也能自动识别计算机容量单位,包括KB,MB,GB,TB,PB

1
2
3
4
5
6
7
8
PS C:/pstest> 1pb/1tb
1024
PS C:/pstest> 1tb/1gb
1024
PS C:/pstest> 1gb/1kb
1048576
PS C:/pstest> 1gb/20mb*10kb
524288

假如一个网站的每天人均PV操作为5,页面大小为80Kb,主机提供商限制的总流量为10G,那平均每天的最大访客数为:

1
2
PS C:/pstest> 10GB/(80KB*5)/30
873.813333333333

评论