使用autocd更改路径后自动运行ls


8

因此,每次更改目录时,我都希望新路径自动以列出ls
如果使用更改了路径,则cd有解决方案,但我从未找到使用该autocd选项更改路径时能起作用的解决方案。

会很方便,以前有人做到过吗?

Answers:


5

您可以通过更改PROMPT_COMMAND在PS1之前执行的变量来实现此目的,例如:

PROMPT_COMMAND='ls'

每当您收到新提示时,它就会列出。当然,您只想ls在目录更改后执行:

PROMPT_COMMAND='[[ $my_currdir != $PWD ]] && ls; my_currdir=$PWD'

这将检查新目录是否与上一个目录不同,然后执行ls,之后将当前目录存储在my_currdir

我在这里找到了更好的一行,他们其中使用bash作为文件管理器

PROMPT_COMMAND='[[ ${__new_wd:=$PWD} != $PWD ]] && list; __new_wd=$PWD'

由于可能__new_wd未设置,因此您可以指定在这种情况下将使用的默认值(请参见bash手册页,搜索:=

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.