Skip to content
← 返回文件与文本处理列表
文件与文本处理任务与配置

命令与脚本:文件、目录与磁盘 · 进入目录、保存位置与交互浏览 ​

返回分篇目录

命令与脚本:文件、目录与磁盘 ​

进入目录、保存位置与交互浏览 ​

从 cd 开始;pushd/popd 保存和恢复目录栈。反复访问目录时再考虑 autojump、zoxide 或书签工具,交互式文件管理见 yazi、spf。

cd · 更改当前工作目录 ​

更多信息:https://www.gnu.org/software/bash/manual/bash.html#index-cd。

  • 转到指定目录:
bash
cd {{路径/到/目录}}
  • 转到当前目录的父目录:
bash
cd ..
  • 转到当前用户的主(home)目录:
bash
cd
  • 转到指定用户的主(home)目录:
bash
cd ~{{用户名}}
  • 转到刚才选择的目录:
bash
cd -
  • 转到根目录:
bash
cd /

~ · 展开到一个目录 ​

更多信息:https://gnu.org/software/bash/manual/bash.html#Tilde-Expansion。

  • 列出当前用户的主目录内容:
bash
ls ~
  • 列出其他用户的主目录内容:
bash
ls ~{{用户名}}
  • 列出你之前所在目录的内容:
bash
ls ~-

pushd · 将目录放在堆栈上,以便以后访问 ​

另请参阅:popd, dirs。 更多信息:https://www.gnu.org/software/bash/manual/bash.html#index-pushd。

  • 切换到目录并将其添加到堆栈上:
bash
pushd {{路径/到/目录}}
  • 切换堆栈上的第一个和第二个目录:
bash
pushd
  • 通过使第 5 个元素成为堆栈的顶部来旋转堆栈:
bash
pushd +4
  • 将堆栈向左旋转 4 次(当前目录通过替换第 5 个元素保持在顶部):
bash
pushd -n +4

popd · 通过 pushd shell 内置程序删除目录堆栈中的目录 ​

另请参阅:pushd, dirs。 更多信息:https://www.gnu.org/software/bash/manual/bash.html#index-popd。

  • 从堆栈中删除顶部目录,并用 cd 跳转到该目录:
bash
popd
  • 删除第 N 个目录(从零开始,以用 dirs 打印的列表左侧开始):
bash
popd +N
  • 删除第 N 个目录(从零开始,以用 dirs 打印的列表右侧开始):
bash
popd -N
  • 删除第 1 个目录(从零开始,以用 dirs 打印的列表左侧开始):
bash
popd -n

autojump · 快速跳转,访问次数最多的文件夹优先 ​

使用 j、jc、和 jo 作为别名。 另请参阅:bashmarks。 更多信息:https://github.com/wting/autojump#name。

  • 跳转到包含指定通配符的目录:
bash
j {{通配符表达式}}
  • 跳转到包含指定通配符的目录的下一级:
bash
jc {{通配符表达式}}
  • 使用系统文件管理器,打开指定的目录:
bash
jo {{通配符表达式}}
  • 从 autojump 数据库中删除不存在的目录:
bash
j --purge
  • 展示 autojump 数据库数据:
bash
j {{[-s|--stat]}}

zoxide · 记录最常使用的目录 ​

使用一个排序算法来导航到最佳匹配。 更多信息:https://manned.org/zoxide。

  • 查询名称含 foo 的最高排名目录路径(只输出路径,不切换目录):
bash
zoxide query {{foo}}
  • 查询名称依次含 foo、bar 的最高排名目录路径(不切换目录):
bash
zoxide query {{foo}} {{bar}}
  • 启动一个交互式目录搜索(需要 fzf):
bash
zoxide query --interactive
  • 添加一个目录或提升其排名:
bash
zoxide add {{路径/到/目录}}
  • 从 zoxide 的数据库中移除一个目录:
bash
zoxide remove {{路径/到/目录}}
  • 为命令别名生成 shell 配置(z, za, zi, zq, zr):
bash
zoxide init {{bash|fish|zsh}}

bashmarks · 使用一个字母的命令,保存或者跳转到常用的目录 ​

另请参阅:autojump。 更多信息:https://github.com/huyng/bashmarks#shell-commands。

  • 可访问书签清单:
bash
l
  • 保存当前目录到某书签里:
bash
s {{书签名}}
  • 跳转到指定书签:
bash
g {{书签名}}
  • 打印书签目录内容:
bash
p {{书签名}}
  • 删除书签:
bash
d {{书签名}}

yazi · 用 Rust 编写的极速终端文件管理器 ​

提供高效、用户友好且可定制的文件管理体验。 更多信息:https://github.com/sxyazi/yazi。

  • 从当前目录启动 Yazi:
bash
yazi
  • 打印调试信息:
bash
yazi --debug
  • 在退出时将当前工作目录写入文件:
bash
yazi --cwd-file {{路径/到/cwd_文件}}
  • 清除缓存目录:
bash
yazi --clear-cache

spf · superfile - 现代终端文件管理器 ​

更多信息:https://github.com/yorukot/superfile。

  • 使用指定路径启动 spf:
bash
spf {{path/to/directory}}
  • 使用多个路径启动 spf:
bash
spf {{path/to/directory1 path/to/directory2 ...}}
  • 修复快捷键设置,补全缺失的按键:
bash
spf {{[--fh|--fix-hotkeys]}}
  • 修复配置文件,补全缺失的项:
bash
spf {{[--fch|--fix-config-file]}}
  • 使用指定的配置文件与快捷键文件:
bash
spf {{[-c|--config-file]}} {{path/to/config.toml}} {{[--hf|--hotkey-file]}} {{path/to/hotkey.toml}}
  • 将第一个选中的文件路径写入该文件并退出:
bash
spf {{[--cf|--chooser-file]}} {{tmp/chooser-result}}
  • 显示内部配置和数据目录路径:
bash
spf {{[pl|path-list]}}

继续阅读