Linux bind命令教程:打造你的定制化Linux命令快捷键(附案例详解和注意事项)

Linux bind命令介绍

bind命令在Linux系统中,用于显示或设置键盘的按键与内部函数或字符串之间的绑定。在我们使用命令行工作时,根据我们的习惯,可以自定义命令的快捷键,使得工作更加便捷。

Linux bind命令适用的Linux版本

bind命令在大多数Linux发行版中,如Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora、Raspbian等都能使用。在某些系统版本中,如果该命令不可用或无法找到,则大概率是因为没有安装bash或者bash的版本太低没有该命令。

[linux@bashcommandnotfound.cn ~]$ sudo apt-get install bash   # Debian/Ubuntu
[linux@bashcommandnotfound.cn ~]$ sudo yum install bash       # RedHat/CentOS/Fedora/Raspbian
[linux@bashcommandnotfound.cn ~]$ sudo apk add bash           # Alpine
[linux@bashcommandnotfound.cn ~]$ pacman -S bash --no-confirm # Arch Linux/Kali Linux

Linux bind命令的基本语法

bind [-m keymap] [-lpsvPSVX] [-q name] [-u name] [-r keyseq][-x keyseq:shell-command] [-t keyseq:text] [keyseq:readline-function or readline-command]

Linux bind命令的常用选项或参数说明

选项说明
-m后面接按键模式名
-l列出.Readline库所能接纳的函数名称
-p以可重设的形式列出.Readline绑定的函数
-P列出.Readline绑定的函数名称
-s以重设的形式列出.Readline所绑定的巨集
-S列出.Readline绑定的巨集名称
-v以可重设的形式列出.Readline变量
-V列出.Readline变量的名称
-q加上一个.Readline命令的名称,绑定到该命令的按键将会被列出
-u取消指定的.Readline命令的所有按键绑定
-r取消指定的按键绑定
-t使指定的按键未绑定,它将会被变为self-insert
-x将指定的按键绑定为执行shell命令
-f读取输入文件,将其中的按键绑定加入到当前的按键绑定中去

Linux bind命令实例详解

实例1:显示当前所有的绑定设置

[linux@bashcommandnotfound.cn ~]$ bind -p

实例2:显示"Control-k"的绑定设置

[linux@bashcommandnotfound.cn ~]$ bind -P k

实例3:将"Control-x"绑定到命令"ls"

[linux@bashcommandnotfound.cn ~]$ bind -x '"\C-x":ls'

实例4:绑定字符串到按键上

[linux@bashcommandnotfound.cn ~]$ bind '"\e[5C": forward-word'

实例5:删除某个按键的绑定

[linux@bashcommandnotfound.cn ~]$ bind -r '\C-x'

实例6:显示所有函数的列表

[linux@bashcommandnotfound.cn ~]$ bind -l

实例7:绑定"C-p"到一个函数up-case-word(该函数将光标当前位置的单词转换为大写)

[linux@bashcommandnotfound.cn ~]$ bind '"\C-p": up-case-word'

实例8:删除具体按键的绑定

[linux@bashcommandnotfound.cn ~]$ bind -r "\C-p"

实例9:将“Control-t”绑定到“ls -l”命令

[linux@bashcommandnotfound.cn ~]$ bind -x '"\C-t": ls -l'

实例10:配置“Control-a”跳到行首并加上sudo前缀

[linux@bashcommandnotfound.cn ~]$ bind '"\C-a": "sudo \C-e\C-m"'

Linux bind命令的注意事项

  • 使用bind命令需要一定的Linux基础和Readline库的认识,不然难以深入理解和使用。
  • bind命令不适用于所有shell终端,而是bash特有的命令,使用其他shell的用户需要调整为bash后才能使用。
  • 若提示bash: bind: command not found,按照上述安装步骤重新安装bash。

Linux bind相关命令

  • set命令:可以显示当前所有Readline设置的绑定值
  • unset命令:用于删除先前设定的绑定值
  • stty命令:可用于修改终端驱动的方式来设定Readline使用的按键
  • history命令:用于显示命令历史,可与bind命令配合使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/673622.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring GateWay

概述简介 能干什么 反向代理 鉴权 流量控制 熔断 日志监控 Spring Cloud Gateway 与Zuul的区别 在SpringCloud Finchley正式版之前,Spring Cloud推荐的网关是 Netflix提供的Zuul: 1、Zuul 1.x,是一个基于阻塞Ⅳ/O的APl Gateway 2、Zuul 1.x基于Servl…

dreamtalk 学习笔记

目录 依赖项: 加载音频: pyav报错 已经开源: GitHub - shubham-dayma/dreamTalk 依赖项: 加载音频: pip install pysoundfile pip install av pyav报错 pip install PyAV av.codec.codec.UnknownCodecError: …

操作字符串之提取字串-5-expr “$string“ : ‘\($substring\)‘

1.expr "$string" : \($substring\) 从$string的开始位置提取$substring,其中$substring是正则表达式 2.实例 操作字符串样例:stringabc123ABC456xyz 索引下标从1开始 123456789............. 字符串操作默认从左边开始进行 2.1.从$strin…

如何保持mac苹果电脑系统在最佳状态?不卡顿

苹果电脑一直以其卓越的性能和用户友好的操作系统而备受欢迎。然而电脑上的文件、应用程序和缓存可能会逐渐积累,导致性能下降。为了确保你的苹果电脑保持最佳状态,高效清理是至关重要的一步。在本文中,我们将分享一些如何清理苹果电脑更高效…

npm 上传一个自己的应用(1) 搭建一个项目环境

上文 在npm官网中注册一个账号并登录 带着大家创建了一个npm账号 我们先登录官网 然后 我们在自己电脑中创建一个文件夹 这个文件夹叫什么没有太大所谓 我这里直接叫 grnpmtext 然后 我们在这个文件夹中初始化一个项目 终端输入 npm initpackage name 要我们输入项目的名称 …

Java项目使用jasypt加密和解密配置文件中关键信息

一、使用背景 项目中application.yml 配置文件中,如数据库、redis、加密算法的私钥等各种配置的username,password的值都是明文的,其实存在一定的安全隐患,如果被人拿到这些配置文件,将直接对系统安全构成极大威胁&…

imgaug数据增强神器:增强器一览

官网:imgaug — imgaug 0.4.0 documentationhttps://imgaug.readthedocs.io/en/latest/ github:GitHub - aleju/imgaug: Image augmentation for machine learning experiments. imgaug数据增强神器:增强器一览_iaa 图像增强改变颜色-CSDN博客文章浏览阅…

Python环境下基于最大离散重叠小波变换和支持向量回归的金融时间序列预测

金融时间序列具有非线性、高频性、随机性等特点,其波动情况不仅与当前股票市场、房地产市场、贸易市场等有强联动性,而且大幅度起伏对于其他市场有较大的影响和冲击。由于金融市场受多种因素影响且各影响因素间也存在一定复杂动态交互关系,导…

开源项目的三年,我的项目经历了哪些变化?

0.前言 自己一个项目写了三年,到底写了什么东西了,这个项目经历了哪些变化呢?其中的心路历程如何? 兄弟们,要是感觉我的项目有价值,去b站给俺点点关注呐。我更新的更快。点击下面的了解就可以跳转去b站。…

我的docker随笔43:问答平台answer部署

本文介绍开源问答社区平台Answer的容器化部署。 起因 笔者一直想搭建一个类似stack overflower这样的平台,自使用了Typora,就正式全面用MarkdownTyporagit来积累自己的个人知识库,但没有做到web化,现在也还在探索更好的方法。 无…

Spring + Tomcat项目中nacos配置中文乱码问题解决

实际工作的时候碰到了nacos中文乱码的问题,一顿排查最终还是调源码解决了。下面为具体的源码流程,有碰到的可以参考下。 对于nacos配置来说,初始主要源码就在NacosConfigService类中。里面有初始化获取配置content以及设置对应监听器的操作。…

已解决org.springframework.web.servlet.NoHandlerFoundException异常的正确解决方法,亲测有效!!!

已解决org.springframework.web.servlet.NoHandlerFoundException异常的正确解决方法,亲测有效!!! 文章目录 问题分析 报错原因 解决思路 解决方法 总结 问题分析 org.springframework.web.servlet.NoHandlerFoundExceptio…

配备Apple T2 安全芯片的 Mac 机型及T2芯片mac电脑U盘装系统教程

T2 芯片为 Mac 提供了一系列功能,例如加密储存和安全启动功能、增强的图像信号处理功能,以及适用于触控 ID 数据的安全保护功能。哪些电脑配备了 T2 安全芯片呢,T2芯片mac电脑又如何重装系统呢?跟随小编一起来看看吧! …

集群及LVS简介、LVSNAT模式原理、LVSNAT模式配置、LVSDR模式原理、LVSDR模式配置、LVS错误排查

集群 将很多机器组织到一起,作为一个整体对外提供服务 集群在扩展性、性能方面都可以做到很灵活 集群分类: 负载均衡集群:Load Balance高可用集群:High Availability高性能计算:High Performance Computing LVS LVS…

6-3、T型加减速单片机程序【51单片机+L298N步进电机系列教程】

↑↑↑点击上方【目录】,查看本系列全部文章 摘要:根据前两节内容,已完成所有计算工作,本节内容介绍具体单片机程序流程及代码 一、程序流程图 根据前两节文章内容可知,T型加减速的关键内容是运动类型的判断以及定时…

CPP项目:Boost搜索引擎

1.项目背景 对于Boost库来说,它是没有搜索功能的,所以我们可以实现一个Boost搜索引擎来实现一个简单的搜索功能,可以更快速的实现Boost库的查找,在这里,我们实现的是站内搜索,而不是全网搜索。 2.对于搜索…

qt/c++实现表情选择框

💂 个人主页:pp不会算法^ v ^ 🤟 版权: 本文由【pp不会算法v】原创、在CSDN首发、需要转载请联系博主 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 实现功能 。编解码的设计 。映射关系设计 。匹配机制设计 演示效…

Lustre文件系统fid介绍

fid介绍 fid是lustre文件系统中文件的唯一标识,总共128位,fid序列、fid序列内编号、fid版本号(目前未使用默认为0) /*** File IDentifier.** FID is a cluster-wide unique identifier of a file or an object (stripe).* FIDs …

C++ 获取每一行的数据 FetchRow() 用vector()实现

1、在LXData里面定义结构体 struct LXAPI LXData{const char* data 0;int size 0;}; 2、在LXMysql.h和LXMysql.cpp分别定义和编写代码 //获取一行数据std::vector<LXData>FetchRow(); std::vector<LXData> LXMysql::FetchRow(){std::vector<LXData>re;i…

vue+video-animation-player播放vap视频

1.安装 npm i video-animation-player 2.引入 import Vap from "video-animation-player" 3.使用 // 第二步创建实例 import Vap from "video-animation-player"let dom document.getElementById("vap-warp") let vapPlayer new Vap({cont…