如何对 ksh93 进行编程以使用 bash 自动完成功能?

2024-01-31

In a 回答 shell 问题的评论 https://stackoverflow.com/questions/933445/a-better-linux-shell/933489#933489, user 修补匠 https://stackoverflow.com/users/50049/tinkertim说很容易被破解ksh使用bash自动完成库。我最想要的莫过于使用bashAT&T 自动完成ksh93。如何才能做到这一点?

ksh93每年都会有几次新版本,所以我正在寻找一种不涉及修改源代码的解决方案。ksh93可以动态链接新的 C 模块,并且高度可编程(我在每次击键时运行 ksh 函数),因此实际上没有必要修改源代码。

Note:我不是在谈论filename自动完成,这很容易做到ksh。我正在谈论 bash 所做的所有其他美味的自动完成功能,例如自动完成选项nmh命令或自动完成 Mercurial 命令。像这样的东西。


有 Readline 包装器 rlwrap。也许您已经有适合您系统的软件包。

它位于您启动的程序的标准输入之上,它是可配置的并且有点可编程,它保留历史记录。

我通常将它用于 Oracle SQL*Plus 之类的东西。

它可能是也可能不是您正在寻找的工具,您必须进行检查。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对 ksh93 进行编程以使用 bash 自动完成功能? 的相关文章

  • bash 中的“declare -r”和“readonly”有什么区别?

    在 bash 中 有什么区别declare r and readonly declare r a a1 readonly b b1 我不知道该选择哪个 tl dr readonly使用默认范围global甚至在函数内部 declare使用范
  • 未找到命令“ember”

    看来我搞砸了 ember cli 安装 我已经使用 sudo 安装了 npm 但是在阅读了 npm 上 ember cli 和 sudo 的一些问题后 我按照此处的说明卸载并重新安装https gist github com isaacs
  • 如何显示 zsh 函数定义(如 bash“type myfunc”)?

    如何在 zsh 中显示函数的定义 type foo没有给出定义 在bash中 bash function foo echo hello bash foo hello bash type foo foo is a function foo e
  • Bash 脚本大小限制?

    我有一个 bash 脚本 在 RHEL 或 OS X 上运行时出现以下错误 第 62484 行 意外标记 换行符 附近出现语法错误 第 62484 行 o gz 这是一个自动生成的脚本 用于解决我公司使用的 Grid Engine 计算集群
  • bash 变量中的 Linux 鞭尾/对话框参数错误

    有人可以解释为什么下面的代码不起作用吗 我要疯狂地想找出答案 bin bash TEST M1 1 wire Interface ON echo TEST RESULT dialog title Config Modules State c
  • 使用 Ansible 将二进制文件添加到 PATH

    我正在尝试安装Kiex https github com taylor kiex版本管理器Elixir http elixir lang org install html使用 Ansible 的编程语言 这些是我为此使用的戏剧 name K
  • 从 Amazon S3 存储桶下载文件的脚本

    尝试编写脚本以从 Amazon S3 存储桶下载文件 cURL 网站上的示例遇到问题 下面的脚本产生 我们计算的请求签名与您的签名不匹配 假如 检查您的密钥和签名方法 感谢任何帮助 bin sh file filename php buck
  • 使用带有curl 的内部字段分隔符

    当我做 ls IFS l 我得到了我期望的输出 当我做 curl IFShttp www google com 我不 我是否误解了内部字段分隔符 如何在不使用任何空格字符的情况下运行curl 命令 您需要将变量放在大括号内 否则 shell
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • .profile 无法从 Mac 终端运行

    我有一个 profile 文件 我正在终端中读取并使用别名 但在某些时候 别名由于没有明确的原因而停止工作 其他命令仍在工作 为了快速修复 我删除了 rm 并在用户目录中重新创建了 profile 文件 我可以看到 至少在该目录中没有 ba
  • 如何制作一个 bash 脚本来同时创建 40 个程序实例?

    我是新来的bash and Linux 我编写了一个程序 我想创建多个同时实例 现在 我通过打开 10 个新终端 然后运行该程序 10 次 我运行的命令是php home calculatedata php 使用 bash 脚本执行此操作的
  • grep 两个分隔符之间的子字符串

    我有很多bash使用的脚本perl内的表达式grep为了提取两个分隔符之间的子字符串 例子 echo BeginMiddleEnd grep oP lt Begin End 问题是 当我将这些脚本移植到运行的平台时busybox 融合的 g
  • bash 行长度限制从何而来?

    在运行 Bash 4 4 19 标准安装 的 Solaris 11 上 输入行似乎有 256 个字符的限制 我想了解这个限制从何而来 我浏览了手册页 但没有找到任何解决此问题的内容 仅当未使用 readline 库时才会发生这种情况 在下面
  • 匹配模式后添加行[重复]

    这个问题在这里已经有答案了 我有一个文件说test具有以下值 Linux Solaris Fedora Ubuntu AIX HPUX 如何在匹配 AIX 的行后面添加一行系统主机名 如果我做 echo hostname gt gt tes
  • Linux 中的动态环境变量?

    Linux 中是否可以通过某种方式拥有动态环境变量 我有一个网络服务器 网站遵循以下布局 site qa production 我想要一个环境变量 例如 APPLICATION ENV 当我在 qa 目录中时设置为 qa 当我在生产目录中时
  • 添加要在给定命令中运行的 .env 变量

    我有一个 env 文件 其中包含如下变量 HELLO world SOMETHING nothing 前几天我发现了这个很棒的脚本 它将这些变量放入当前会话中 所以当我运行这样的东西时 cat env grep v xargs node t
  • 使用 find 命令搜索直到第一个匹配项

    我只需要搜索可以在任何地方的特定目录有没有办法运行此命令直到第一个匹配 谢谢 我现在使用 find noleaf name experiment type d wc l 正如鲁道夫 米尔鲍尔 Rudolf M hlbauer 所提到的 qu
  • 如何查找所有以句号结尾的单词?

    我有一个包含许多以 a 结尾的单词的文件 其中大部分是缩写 例如 etc p s 如何输出一个仅显示一次所有这些单词的列表 所有单词前面都有一个空格 因此可以使用该空格来查找单词的开头 没有一个单词出现在该行的开头 文件中没有句子 因此句点
  • 如何在shell中输出返回码?

    我正在尝试通过调用自定义 shell 脚本sh bin sh c myscript sh gt log txt 2 gt 1 echo 该命令的输出是创建的后台进程的 PID 我想指导 bin sh保存返回码myscript sh到某个文件
  • 在 bash 脚本中提取 XML 值 [重复]

    这个问题在这里已经有答案了 我正在尝试从 xml 文档中提取一个值 该文档已作为变量读入我的脚本中 原始变量 data is

随机推荐

  • 从 Python 文档字符串自动生成 GitHub Wiki 文档

    标题说明了一切 我的想法是为我的所有模块 类和函数提供文档字符串 并以某种方式通过 github wiki 很好地导航文档 此外 该文档应与最新代码同步 这意味着它应在推送时更新 重新生成 那可能吗 只需通过管道传输生成的输出docstri
  • __getitem__, __setitem__ 多个键

    我正在尝试创建一个类 它将数据存储在本地缓冲区中 并充当数据库的接口 我有以下代码 class Table object def init self tableName columnDict self tableName tableName
  • Python 与 QML (Qt-Quick) 配合得很好吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我是 Qt Quick 的初学者 我不知道 Qt 是 QML 的基础 而且我也不熟悉 C 它又是 Qt 和 QML 的主要支持语言 我
  • 为什么 assembleDebug 比项目构建花费的时间要长得多以及如何优化它?

    我最近一直在处理 Android Studio 中的 gradle 构建时间 通过删除一些依赖项 我成功地将构建时间从大约 3 分钟减少到 10 秒 但事情是这样的 当我重建项目时 大约需要 10 秒 15 13 43 Executing
  • 显示为问号的特殊字符

    使用 Python 编程语言时 我在输出 和 等字符时遇到问题 以下代码给出了一个问号 作为输出 而不是 coding iso 8859 1 input print input 以下代码可让您输入随机文本 for 循环遍历输入的每个字符 将
  • Tinymce:拼写检查器不工作

    我在用spellchecker for tinymce在我的应用程序中 拼写检查器内部使用Moxiecode TinyMCE dll 在我们上次实时更新之前它运行良好 突然就报错了You must write ContentLength b
  • NestJS + CASL + Mongoose:CASL 无法从 Mongoose Schema 推断主题类型

    Context 我定义了一个Cat使用 Mongoose 和 NestJS 的架构 import Prop Schema SchemaFactory from nestjs mongoose import Document from mon
  • VBA - 检查列表对象中的数据是否被过滤

    我正在尝试开发一个自定义函数来检查列表对象中的数据是否被过滤 Public Function TestFiltered As Boolean Dim rngFilter As Range Dim r As Long f As Long Se
  • 从哪里获取与 timezone-js 配合使用的 Olson 时区数据库文件?

    根据 timezone js 的自述文件 http github com mde timezone js http github com mde timezone js 您需要下载 Olson 时区数据库并将文件存储在 Web 服务器上的目
  • Postgres where 子句来自子查询的两列

    数据库 Postgres 表名 records 有 4 列Year Dept Expense Month 因此 每年每个月 每个部门最多可以有一条记录 我有一个子查询 它根据约束返回以下数据 Year Dept 2001 HR 2001 A
  • AS 中的内部类

    例如 package public class A var test String public function A class B 代码在同一个文件中 我们称B为内部类 那么如何调用B类的构造函数 package public clas
  • XML文档选择

    我的 XML 文档格式如下
  • 如何使用systemjs导入fullcalendar v.3.0.1?

    我有app ts import moment from moment moment import from jquery import fullcalendar fullcalendar calendar fullCalendar 但出现
  • Node.js 中的 WordPress 身份验证

    允许用户使用 WordPress 页面中的用户帐户使用 Node js 应用程序的最佳方式是什么 我尝试过在 Redis 中存储会话信息 但我对 PHP 不太熟悉 并且遇到了不存储会话的死胡同 我用过这个guide http simplap
  • Twitter 引导表单字段太小

    我知道这个主题 听起来 很像其他主题 但我已经浏览了所有现有的线程 无论如何 大多数 但我仍然有一个问题 我可以使用帮助 The problem与其他人所描述的并没有太大不同 某些 FORM 元素不显示其完整的垂直高度 其中最值得注意的是
  • 缓存与分页

    所以我在上计算机体系结构课 我想我很难区分缓存和页面 我能想到的唯一解释是 页面是操作系统欺骗程序的方式 让程序在指定的内存区域中完成所有工作 而高速缓存是硬件欺骗操作系统从指定区域读取数据的方式 记忆区域 而实际上并非如此 操作系统是否指
  • DrRacket/Scheme 中的地图、过滤器、Foldr

    编程语言 Scheme DrRacket 我们目前正在回顾map filter and foldr在我的计算机科学课上 我知道这三个函数都可以用来创建抽象函数 但说实话 我对这三个函数之间的区别以及何时使用每个函数感到有点困惑 有人愿意解释
  • sed 删除特定字符周围的空格

    仅删除某些字符周围的空格的最佳方法是什么 让我们说一个破折号 Some String 12345 Here会成为Some String 12345 Here 就像是sed s g s g 但我确信一定有更好的方法 Thanks 如果你的意思
  • ASP.NET MVC 5 中的“通用”OpenID

    我尝试了 ASP NET MVC 5 中的新身份验证功能 我之前使用过DotNetOpenAuth 我知道内置的 Google 提供程序使用 OpenID 1 并且工作正常 但我想在身份验证时使用我自己的 OpenID 提供程序 不幸的是
  • 如何对 ksh93 进行编程以使用 bash 自动完成功能?

    In a 回答 shell 问题的评论 https stackoverflow com questions 933445 a better linux shell 933489 933489 user 修补匠 https stackover