cmd切换到powershell (一)

这里整理 CMD 与 PowerShell 常用命令对照表,按使用场景分类,附用法差异、注意点,直接对照使用即可。

说明:PowerShell 原生兼容大部分传统 DOS 命令(如 ping/ipconfig),但推荐使用原生 PS 指令,功能更强。

一、目录与文件操作

功能 CMD 命令 PowerShell 命令 补充说明
查看目录 dir Get-ChildItem / 简写 ls PS 推荐 ls,参数更丰富
切换目录 cd 路径 cd 路径 / Set-Location 用法基本一致
返回上级 cd .. cd .. 通用
新建文件夹 md 文件夹名 / mkdir mkdir 文件夹名 / New-Item -Dir 完全兼容
删除文件 del 文件名 Remove-Item 文件名 / del 批量删:del *.txt 通用
删除文件夹 rd 文件夹 /s /q Remove-Item 文件夹 -Recurse -Force PS 删目录必须加 -Recurse
复制文件 copy 源 目标 Copy-Item 源 目标 / copy 复制目录 PS 加 -Recurse
移动/重命名 move 源 目标 Move-Item 源 目标 / move 重命名用法一致
查看文件内容 type 文件名 Get-Content 文件名 / cat 大文件 PS cat 体验更好

二、进程 & 服务管理

功能 CMD 命令 PowerShell 命令
查看所有进程 tasklist Get-Process / ps
按名称杀进程 taskkill /f /im java.exe Stop-Process -Name java -Force
按PID杀进程 taskkill /f /pid 1234 Stop-Process -Id 1234 -Force
查看系统服务 sc query Get-Service
启动服务 sc start 服务名 Start-Service 服务名
停止服务 sc stop 服务名 Stop-Service 服务名

三、网络相关

功能 CMD 命令 PowerShell 命令
查看网卡IP ipconfig ipconfig / Get-NetIPAddress
测试连通性 ping 域名/IP ping 域名/IP
查看端口占用 netstat -ano netstat -ano / Get-NetTCPConnection
路由追踪 tracert 域名 tracert 域名 / Test-NetConnection 域名 -TraceRoute

四、系统 & 环境操作

功能 CMD 命令 PowerShell 命令
清屏 cls cls / Clear-Host
查看环境变量 set Get-ChildItem Env:
临时设置环境变量 set 键=值 $env:键="值"
查看当前用户 whoami whoami
关机/重启 shutdown /s /t 0 / shutdown /r /t 0 Stop-Computer / Restart-Computer

五、文件查找 & 过滤

功能 CMD 命令 PowerShell 命令
文本过滤 findstr "关键词" 文件 Select-String "关键词" 文件 / findstr
递归查找文件 dir /s /b *.jar ls -Recurse -Filter *.jar

六、后台运行 & 输出重定向(你之前用到的场景)

1. 标准输出/错误输出黑洞

  • CMD:

    cmd 复制代码
    java -jar app.jar >nul 2>&1
  • PowerShell:

    powershell 复制代码
    java -jar app.jar > $null 2>&1

2. 后台运行程序

  • CMD 后台:start /b java -jar app.jar
  • PowerShell 后台:Start-Process java -ArgumentList "-jar app.jar"

七、关键差异&实用小贴士

  1. 路径分隔
    两者都支持 \;PowerShell 也支持 Linux 风格 /,跨平台更友好。

  2. 通配符
    *? 用法完全一致,原有批量命令不用改。

  3. 脚本后缀

    • CMD 脚本:.bat / .cmd
    • PowerShell 脚本:.ps1
  4. 别名兼容
    PowerShell 内置了大量 CMD/Linux 别名(ls/cat/del/copy),老命令直接敲就能用,过渡无压力。

  5. 权限
    执行 .ps1 脚本默认有策略限制,首次执行可临时放行:

    powershell 复制代码
    Set-ExecutionPolicy RemoteSigned

八、过渡建议

  1. 日常简单操作:继续用熟悉的 ping/ipconfig/dir,两套环境通用;
  2. 写新自动化脚本:优先用 .ps1,支持变量、判断、循环、JSON 解析,能力远强于 bat;
  3. 老旧 .bat 脚本:无需重构,保留用 CMD 运行即可。
相关推荐
BingoGo12 小时前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
JaguarJack12 小时前
PHP 泛型之殇 泛型 RFC 提案被拒绝
后端·php
用户3074596982071 天前
PHP 扩展——从入门到理解
php
鹏仔先生2 天前
拷贝漫画APP下载页PHP程序,后台带免费AI写作
php
大树882 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
LDR0062 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术2 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园2 天前
C++20 Modules 模块详解
java·开发语言·spring
小宇宙Zz2 天前
Maven依赖冲突
java·服务器·maven
swordbob2 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio