news 2026/4/18 14:43:32

Bash、PowerShell 常见操作总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Bash、PowerShell 常见操作总结

本文总结了Bash和PowerShell中常见的目录操作命令。


Bash部分包括cd导航、pwd查看路径、目录栈管理(pushd/popd)以及相对路径使用技巧。


PowerShell部分涵盖Set-Location(cd)导航、Get-ChildItem(ls)查看内容、目录栈操作和特有的PSDrive功能。


两者都支持返回上级目录、主目录和目录历史管理,但PowerShell提供了更丰富的路径处理功能,如跨平台路径操作和访问注册表等特殊存储。


文章还对比了两者在路径分隔符、命令分隔符等方面的差异,帮助用户提高命令行工作效率。


Bash常见操作总结表

操作类型命令/符号说明示例
目录导航cd ..返回上一级目录cd ..
cd ../..返回上两级目录cd ../..
cd -返回上一个工作目录cd -
cd ~cd返回用户主目录cd ~
cd /返回根目录cd /
目录查看pwd显示当前目录完整路径pwd
ls列出当前目录内容ls -la
路径相关pushd将目录保存到目录栈并切换pushd /path/to/dir
popd从目录栈恢复上一个目录popd
dirs显示目录栈内容dirs -v
特殊路径.当前目录./script.sh
..上级目录../other-dir/file.txt

常用组合操作

场景命令组合效果
快速返回上级目录并查看内容cd .. && ls返回上级并列出文件
进入深层目录后返回原处cd /very/long/path
cd -
快速回到原工作目录
临时访问其他目录并返回pushd /tmp
# 执行操作
popd
自动返回原目录

实用技巧

  1. 使用别名简化操作

    alias ..='cd ..' alias ...='cd ../..'

    之后可直接用..返回上级

  2. 目录栈管理

    pushd /dir1 pushd /dir2 dirs -v # 查看栈 popd # 返回/dir1 popd # 返回原始目录
  3. 相对路径使用

    # 从当前目录的上级目录访问文件 cat ../config/file.conf # 从上级目录执行脚本 ../scripts/start.sh
  4. 环境变量

    # 使用HOME变量 cd $HOME/Documents # 使用OLDPWD变量(存储上一个目录) echo $OLDPWD

这些操作是Bash日常使用中最基本且最频繁的目录导航命令,掌握后能显著提高命令行工作效率。


PowerShell常见操作总结表

操作类型命令/别名说明示例
目录导航Set-Location ..cd ..返回上一级目录cd ..
Set-Location ../..返回上两级目录cd ../..
Set-Location -cd -返回上一个工作目录(PowerShell 5.1+)cd -
Set-Location ~cd ~返回用户主目录cd ~
Set-Location \cd \返回当前驱动器的根目录cd \
Set-Location /返回文件系统的根目录(跨平台)cd /
目录查看Get-Locationpwd显示当前目录路径pwd
Get-Location -Stack显示目录栈内容Get-Location -Stack
Get-ChildItemlsdir列出当前目录内容ls -Force
目录栈操作Push-Locationpushd保存当前目录到栈并切换pushd C:\Windows
Pop-Locationpopd从栈恢复上一个目录popd
驱动器操作Get-PSDrive显示所有PS驱动器Get-PSDrive
Set-Location C:切换驱动器(Windows)cd C:
Set-Location Env:进入环境变量驱动器cd Env:
路径操作Resolve-Path解析路径中的通配符Resolve-Path .\*.ps1
Split-Path获取路径的特定部分Split-Path -Parent .\test\file.txt
Join-Path合并路径部分Join-Path C:\test "file.txt"

常用组合操作

场景命令组合效果
返回上级并列出文件cd ..; lsPowerShell使用分号分隔命令
临时访问目录并返回pushd C:\Temp; Get-Process; popd自动化工作流
查看目录历史(Get-PSReadLineOption).HistorySavePath查看命令历史文件位置
快速访问特殊文件夹cd $HOMEcd $env:USERPROFILE使用环境变量

特殊文件夹快捷方式

快捷方式对应路径说明
$HOME用户主目录跨平台兼容
$PWD当前目录可在字符串中使用
$env:TEMP临时文件夹Windows临时目录
$PSHOMEPowerShell安装目录PowerShell程序目录
[Environment]::GetFolderPath('Desktop')桌面路径.NET方法获取特殊文件夹

PowerShell特有功能

功能命令/方法说明
提供程序导航cd HKLM:\进入注册表驱动器
cd Cert:\进入证书存储
cd Variable:进入变量驱动器
位置历史(Get-PSReadlineOption).HistorySavePath获取历史文件路径
自动补全Tab路径和命令补全
通配符搜索cd *test*使用通配符跳转目录

实用技巧

  1. 使用自定义函数简化操作

    powershell

    # 创建返回多级目录的函数 function .. { Set-Location .. } function ... { Set-Location ..\.. } function .... { Set-Location ..\..\.. }
  2. 使用位置栈管理多个目录

    powershell

    pushd C:\Projects pushd D:\Data Get-Location -Stack # 查看栈内容 popd # 返回C:\Projects popd # 返回原始目录
  3. 路径操作示例

    powershell

    # 获取父目录 Split-Path -Parent "C:\Users\John\Documents\file.txt" # 组合路径 Join-Path "C:\Test" "subfolder\file.txt" # 解析相对路径为绝对路径 Resolve-Path ".\scripts\*.ps1"
  4. 跨平台路径处理

    powershell

    # 跨平台兼容的路径操作 [System.IO.Path]::Combine("folder", "subfolder", "file.txt") [System.IO.Path]::GetDirectoryName("C:\test\file.txt")
  5. 使用PSDrive访问不同数据存储

    powershell

    # 访问注册表 cd HKLM:\Software ls # 访问环境变量 cd Env: Get-ChildItem | Where-Object Name -like "*PATH*" # 访问证书存储 cd Cert:\CurrentUser\My

与Bash的主要区别

特性PowerShellBash
路径分隔符\(Windows),/(跨平台)/
命令分隔符;;&&
当前目录表示.(相对),$PWD(变量).$PWD
上级目录....
根目录\//
主目录~$HOME~$HOME

PowerShell的目录操作虽然与Bash有相似之处,但提供了更丰富的功能,特别是通过PSDrive可以访问各种数据存储,这是其独特优势。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 8:40:44

Markdown转PDF发布技术文章:Pandoc工具使用指南

Markdown转PDF发布技术文章:Pandoc工具使用指南 在科研、AI工程和开源协作的日常中,我们常常面临这样一个场景:一篇结构清晰、代码丰富、公式严谨的技术文章写好了,却卡在“如何优雅地导出为正式PDF”这一步。手动复制到Word排版&…

作者头像 李华
网站建设 2026/4/18 8:30:06

AntiSplit-M:轻松合并分裂APK文件的安卓应用解决方案

AntiSplit-M:轻松合并分裂APK文件的安卓应用解决方案 【免费下载链接】AntiSplit-M App to AntiSplit (merge) split APKs (APKS/XAPK/APKM) to regular .APK file on Android 项目地址: https://gitcode.com/gh_mirrors/an/AntiSplit-M 你是否曾经遇到过下载…

作者头像 李华
网站建设 2026/4/18 5:41:13

GBase 8s JDBC 参数 GL_DATETIME 介绍

在数据库开发中,日期和时间的格式化是一个常见的需求。GBase 8s 提供了 GL_DATETIME 环境变量,用于控制日期和时间的显示和插入格式。本文将介绍 GL_DATETIME 参数的使用方法,特别是其在 JDBC 中,通过实际示例展示其效果。GL_…

作者头像 李华
网站建设 2026/4/18 10:21:41

Python Pillow图像处理5大核心技巧:从入门到实战进阶

想要轻松掌握Python图像处理的精髓吗?Pillow图像处理库提供了简洁而强大的解决方案,让复杂的图像转换变得触手可及。无论你是刚接触Python的初学者,还是希望提升图像处理技能的中级开发者,这5大核心技巧都将为你打开全新的技术视野…

作者头像 李华
网站建设 2026/4/18 7:44:08

CKEditor5全功能版:手工编译的终极解决方案

CKEditor5全功能版:手工编译的终极解决方案 【免费下载链接】ckeditor5全功能版纯手工编译 本仓库提供了一个经过精心编译的 ckeditor5 全功能版资源文件。ckeditor5 是目前非常流行的文章编辑器之一,本版本精选了常用的插件,几乎涵盖了99%的…

作者头像 李华