B

Bash:如何在终端中进行传送

2025-05-25

Bash:如何在终端中进行传送

概述

今天,我将分享一个我用来轻松在终端周围传送的小技巧。

您是否像这样更改您的项目目录?

> ~
$ cd Documents

> ~/Documents
$ cd projects

> ~/Documents/projects
$ cd my-project

> ~/Documents/projects/my-project
$ ls

src/ package.json yarn.lock etc... 
Enter fullscreen mode Exit fullscreen mode

那么这篇文章适合您!

Pushd 和别名

如果您有经常访问的目录,使用 pushd 创建别名会非常有用。

如果您对 bashrc、pushd 或设置别名一无所知,请查看我的Bash 脚本工具包博客。

我们可以尝试在 bashrc 中添加类似这样的内容:

alias projects="pushd ~/Documents/projects"
alias experiments="pushd ~/Documents/experiments"
Enter fullscreen mode Exit fullscreen mode

现在,只要我们在终端中输入projects或,我们就可以立即“传送”到这些目录!experiments

伟大的斯科特

但这还不止于此,朋友们!你现在可能在问自己:“Jimmy,既然 cd 能做同样的事情,为什么还要用 pushd 呢?”

这个问题问得真好!Pushd 有个特殊功能。当我们 push 到一个目录后,可以用 popd 弹回之前所在的目录。假设我们现在在实验文件夹里,projects在终端里输入 。现在,如果我们想回到实验目录,只需要输入popd,就能回到之前所在的目录!

&&

在编写 Bash 别名时,&& 是一个非常实用且强大的工具。它允许我们在一行内串联多个命令!所以,让我们使用这个&&运算符串联一些额外的命令,改进我们的脚本。

alias projects="pushd ~/Documents/projects && clear && ls"
alias experiments="pushd ~/Documents/experiments && clear && ls"
Enter fullscreen mode Exit fullscreen mode

您可以看到,我们已经将clear和链接ls到了我们的命令。所以现在当我们使用 projects 别名时,它会带我们进入我们的项目目录,清除屏幕,并列出所有文件和目录。是不是很棒?

我经常使用的另一个别名是:

alias x="clear && ls"
Enter fullscreen mode Exit fullscreen mode

CD 别名

您这样做了多少次:

$ cd ..

$ ls
Enter fullscreen mode Exit fullscreen mode

为什么不设置几个别名来帮你完成这些艰苦的工作呢?

alias ..="cd .. && clear && ls"
alias ...="cd ../.. && clear && ls"
alias ....="cd ../../.. && clear && ls"
alias .....="cd ../../../.. && clear && ls"
Enter fullscreen mode Exit fullscreen mode

现在..会跳转到一个目录,清空屏幕,并列出该目录中的所有文件。是不是很酷?

结论

结合使用链接&&pushd我们可以创建一些非常有用的别名,这些别名不仅可以帮助我们在文件系统中进行传送,还可以保持其清洁和有序。

你最喜欢的 Bash 脚本或别名有哪些?欢迎在评论区留言!

文章来源:https://dev.to/jimmymcbride/bash-how-to-teleport-in-the-terminal-1e09
PREV
您还在终端中使用 Git 吗?
NEXT
在 React 中获取数据:快速指南