交互式 shell 提示?

交互式 shell 提示?

您最喜欢的 shell 技巧有哪些?有哪些技巧可以让您每天的命令行使用变得更加轻松?

我的,用于 bash:

将其添加到主目录中的 .inputrc 文件中:

"\e[A": history-search-backward
"\e[B": history-search-forward

现在,当您在提示符下开始输入时,箭头键将在您的历史记录中搜索以您已经输入的内容开头的任何其他命令。

答案1

这不是小贴士,更像是元小贴士。有很多很酷的 CLI 接收方法http://www.commandlinefu.com/

答案2

如果您是 vi 用户,请尝试 bash 的 vi 模式:

set -o vi

按 ESC 进入命令模式。从那里,您可以使用熟悉的 vi 命令(hjkl、w、^、$、i、A、c、d 等)浏览命令行。您可以使用 / 搜索命令历史记录。您甚至可以按 v 启动 vi 并编辑当前命令。

这张备忘单获取受支持的 vi 命令列表。

答案3

以下是我在日常 Bash 中最常用的

我最常用的关键字快捷键 - tab 当然是用于制表符补全(设置 bash 补全使其更加好用) - 向上和向下用于浏览历史记录 - ctrl-a 和 ctrl-e 用于行首和行末 - ctrl-r 用于搜索历史记录(只需开始输入命令的开头) - ctrl-g 取消搜索 - alt-f 将光标向前移动一个单词 - alt-b 将光标向后移动一个单词 - esc 然后 . 将上一个命令的最后一个参数添加到当前命令(再次执行此操作将转到上一个命令的最后一个参数) - alt-d 删除光标当前位置前面的单词 - ctrl-w 删除光标当前位置后面的单词 - ctrl-u 删除从光标当前位置到行首的所有内容 - ctrl-k 删除从当前位置到行末的所有内容

除此之外,请确保你有一个颜色设置,我将 git 分支添加到我的提示中

我的 .bash_aliases 文件中也始终有重新加载功能(显然源自我的 .bashrc 或 .bash_profile 文件)

reload()
{
    if [ -f ~/.bashrc ]; then
        source ~/.bashrc
    else
        source ~/.bash_profile;
    fi
}

答案4

可能最简单、最有用的事情之一就是学习 readlin 快捷键。^h 表示退格,^u 表示删除光标前的行,^k 表示删除光标后的行。这里有完整的快捷键列表 [这里][1]http://www.bigsmoke.us/readline/shortcuts

此外,在 debian/ubuntu 上(至少没​​有其他 Linux 可以测试),将其添加到 .bashrc 将在 bash 中启用智能完成,就像在 zsh 中一样,这样常用命令(如 find 等)的参数将可以通过制表符完成

if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi

相关内容