Shell选项,用于在Linux中将cd刻录到文件夹时自动列出所有文件



我真的厌倦了键入ls。shell中是否有一个命令或选项可以在不必键入ls的情况下将cd之后的所有文件显示到文件夹中?非常感谢。

原件:

folder>cd subfolder
subfolder>ls
yu fi sd

我所期待的:

folder>cd subfolder
yu fj sd
subfolder>

我知道我可以用cd subfolder;ls但我真的不想打ls,因为它很无聊。

基本上,我在寻找一个嵌入在shell中的命令,这样我就可以随心所欲地打开或关闭这个功能。

  1. 如果您只想在cd 之后使用ls

    实际上,在.bashrc中,您需要将cd定义为使用以下内容的函数:

    cd() {
        builtin cd $@
        ls
    }
    
  2. 如果你想在shell中的每个命令之后ls

    然后在.bashrc中设置类似的内容:

    prompt_func() {
        export PS1="$(ls)n$ "
    }
    export PROMPT_COMMAND=prompt_func
    

虽然它不是一个脚本解决方案,但请安装Midnight Commander。运行mc,每次进入目录时都会看到一个文件列表。您可以在mc接口中使用shell。也可以使用Ctrl-1Ctrl-2切换窗格。

我认为脚本解决方案不适合您的情况。

您可以创建一个名为cdls:的函数

cdls () { cd "$1" && ls ;} 

运行方式:

cdls /directory

例如:

$ cdls () { cd "$1" && ls ;} 
$ cdls foo
bar
$ pwd
/home/foobar/foo

最新更新