返回顶部
首页 > 资讯 > 操作系统 >Linux/MacOS:如何在终端中使用上下键快速查阅历史命令
  • 313
分享到

Linux/MacOS:如何在终端中使用上下键快速查阅历史命令

linuxmacos 2023-10-25 20:10:37 313人浏览 独家记忆
摘要

在不进行任何设置的时候,无论是linux还是MacOS的终端,上下键都只能查看前后一条的命令。如果可以根据已经键入的命令的一部分查询前缀匹配的历史命令,效率会高很多。 在linux里解决方案很简单:

在不进行任何设置的时候,无论是linux还是MacOS的终端,上下键都只能查看前后一条的命令。如果可以根据已经键入的命令的一部分查询前缀匹配的历史命令,效率会高很多。
在linux里解决方案很简单:

vim ~/.bashrc

然后输入以下内容:

if [[ $- == *i* ]]then    bind '"\e[A": history-search-backward'    bind '"\e[B": history-search-forward'fi

最后source ~/.bashrc或者重启终端即可。

但是如果是直接在MacOS的.bashrc文件里输入上述内容,会报command not found: bind的错误,这是因为MacOS里没有bind这个命令。直接百度报错一般都是Linux的解决方案,搜索Mac和bind也基本搜出来的都是另一个和网络连接有关的工具。最终在一个英文论坛上找到了解决方案:链接

MacOS里绑定快捷键相关的命令是bindkey而不是bind,并且命令格式也有一点区别,修改后应该在.bashrc输入以下内容:

if [[ $- == *i* ]]then    bindkey "\e[A" history-search-backward    bindkey "\e[B" history-search-forwardfi

当然,这里还有另一个坑,重启终端后.bashrc可能并不会被自动执行,需要设置一下:

然后效果就和Linux中使用一样了,上下键可以根据已输入的字符匹配具有相同前缀的历史命令。


修正一下,以上提到的区别其实不是Linux和MacOS的区别,而是shell命令解释器的区别。Linux上使用的是/bin/bash,而MacOS在我的机器上默认使用的是/bin/zsh,使用echo $SHELL命令就可以看到自己机器上使用的是哪个,而使用chsh -s /bin/bash和chsh -s /bin/zsh命令则可以进行切换。也就是说bind是bash的命令,而bindkey是zsh的命令。结合一下,.bashrc文件里应该写入的完整内容为:

if [ $SHELL = "/bin/zsh" ]then    if [[ $- == *i* ]]    then        bindkey "\e[A" history-search-backward        bindkey "\e[B" history-search-forward    fielif [ $SHELL = "/bin/bash" ]then    if [[ $- == *i* ]]    then        bind '"\e[A": history-search-backward'        bind '"\e[B": history-search-forward'    fifi

来源地址:https://blog.csdn.net/qq_44980390/article/details/131107317

--结束END--

本文标题: Linux/MacOS:如何在终端中使用上下键快速查阅历史命令

本文链接: https://lsjlt.com/news/442874.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Linux/MacOS:如何在终端中使用上下键快速查阅历史命令
    在不进行任何设置的时候,无论是Linux还是MacOS的终端,上下键都只能查看前后一条的命令。如果可以根据已经键入的命令的一部分查询前缀匹配的历史命令,效率会高很多。 在linux里解决方案很简单: ...
    99+
    2023-10-25
    linux macos
  • 使用rlwrap实现sqlplus上下键翻阅输过的oracle历史命令
    初学Oracle的同学可能在Linux 下使用SecureCRT来连接服务器,在使用sqlplus时像调用之前输入过的命令重新执行,没法实现????同样的问题肯定前辈们一定也遇到过,所以就Google了一下...
    99+
    2024-04-02
  • 详解在SQLPlus中实现上下键翻查历史命令的功能
    目录安装readline安装rlwrap创建别名Oracle当然是世界上最强大的数据库,但它的客户端sqlplus真的不友好,现在还不能支持上下方向键翻查历史命令,这里介绍使用rea...
    99+
    2024-04-02
  • Linux命令中如何使用文件内容查阅od命令
    本篇内容介绍了“Linux命令中如何使用文件内容查阅od命令”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!名称:od位置:/usr/bin/...
    99+
    2023-06-13
  • oracle安装后完善2-2 如何像Linux 命令行一样可以上下键翻历史命令
    oracle 如何像Linux 命令行一样可以上下键翻历史命令oracle里面如果输入一段代码或者sql,执行之后发现语法错误,或者想查看之前输入的命令。下载rpm包 rlwrap(附件提供32和...
    99+
    2024-04-02
  • Linux终端中如何使用Nmcli命令连接WiFi
    小编给大家分享一下Linux终端中如何使用Nmcli命令连接WiFi,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!nmcli命令是redhat7或者centos7...
    99+
    2023-06-27
  • 如何在linux系统中使用命令查看端口
    这期内容当中小编将会给大家带来有关如何在linux系统中使用命令查看端口,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。route 在配置网络时,要为机器指定接收数据包时该包要经过的路径。在Linux系统中...
    99+
    2023-06-13
  • 如何在Linux上使用命令行查看硬件信息
    在 Linux 中,可用于检查和查看硬件信息的命令有很多。其中某些命令可以输出特定硬件和信息,例如:CPU 和内存等。本教程列出一些 Linux 上查看硬件信息的常用命令,以帮助大家快...
    99+
    2022-06-03
    Linux 如何 信息 硬件
  • 如何在Linux中使用netstat命令查看80端口的连接数
    本篇文章给大家分享的是有关如何在Linux中使用netstat命令查看80端口的连接数,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。服务器上的一些统计数据:  1)统计80端口...
    99+
    2023-06-13
  • 如何在linux中使用less命令查看文件
    如何在linux中使用less命令查看文件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.命令格式:less [参数]  文件2.命令功能:less...
    99+
    2023-06-09
  • Linux中如何使用whereis命令快速查找文件只限程序名
    这篇文章主要讲解了“Linux中如何使用whereis命令快速查找文件只限程序名”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中如何使用whereis命令快速查...
    99+
    2023-06-13
  • 在Linux中如何使用bd命令快速返回到特定的父目录
    这篇文章主要介绍了在Linux中如何使用bd命令快速返回到特定的父目录,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是 bd 命令?bd 命令允许用户快速返回 Linux...
    99+
    2023-06-16
  • 如何在Linux上查看自己最经常使用的命令
    这篇文章主要介绍如何在Linux上查看自己最经常使用的命令,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在 Linux 上查看你自己最经常使用的命令在 Linux 中,历史文件 ~/.bash_history 会记录...
    99+
    2023-06-05
  • 在Linux的命令行中如何使用BitTorrent进行下载
    本篇内容主要讲解“在Linux的命令行中如何使用BitTorrent进行下载”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在Linux的命令行中如何使用BitTorrent进行下载”吧!如果你喜...
    99+
    2023-06-13
  • linux中如何使用自动校正工具来辅助用户校正终端命令输入
    这篇文章主要介绍linux中如何使用自动校正工具来辅助用户校正终端命令输入,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!linux中经常输入错误的命令,想要借助于命令行自动校正工具来辅助用户校正命令。该怎么使用呢?下...
    99+
    2023-06-10
  • Linux中如何使用scp命令远程上传下载文件或文件夹
    这篇文章主要介绍“Linux中如何使用scp命令远程上传下载文件或文件夹”,在日常操作中,相信很多人在Linux中如何使用scp命令远程上传下载文件或文件夹问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Lin...
    99+
    2023-06-27
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作