如何从 bash 脚本中识别当前的终端模拟器?

2024-02-17

我有一个脚本可以在 OS X 终端应用程序中打开一个新选项卡,并且我正在尝试添加对 iTerm2 的支持。不幸的是,在两个终端模拟器中打开选项卡的方法不同。

我如何知道这两个中的哪一个正在被使用或打开,以有条件地运行正确的脚本?


我不确定如何区分 iTerm 和 iTerm2,但请检查$TERM_PROGRAM环境。对于我(Mac OS X 10.7),它返回Apple_Terminal for Terminal.app, and iTerm.app对于 iTerm2。

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

如何从 bash 脚本中识别当前的终端模拟器? 的相关文章

  • 如何删除最后一次出现模式后的所有行?

    我想删除最后一次出现模式之后的所有行 除了模式本身 file txt honor apple redmi nokia apple samsung lg htc file txt 我想要什么 honor apple redmi nokia a
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • 如何使用我在 github 中发布的 bash 脚本执行 chsh?

    我有一个要点 我总是用它来在新服务器上安装我需要的软件包 http gist github com 4372049 http gist github com 4372049 我需要做的就是通过 ssh 在新服务器中输入以下内容 bash c
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • 将 Armadillo C++ 库导入 Xcode

    我是 Mac 用户 正在尝试安装和导入 C Armadillo 库 以下是我到目前为止所采取的步骤 1 我从其网站下载了犰狳库 2 我仔细阅读了下载文件中的 Readme txt 文件 解释了如何安装它 3 我使用CMake将犰狳下载文件制
  • 如何从 os x 终端启动屏幕保护程序(并锁定屏幕)?

    有没有办法从 bash 脚本启动屏幕保护程序 并锁定屏幕 你试过这个吗 System Library Frameworks ScreenSaver framework Resources ScreenSaverEngine app Cont
  • zsh:未找到命令:使用 Big Sur Mac 的终端上的 R

    我从官方 cran 网站安装了 R 我可以从 Rstudio 运行 R 但是当我尝试从终端使用 R 时 我得到以下结果 base ege Eges MBP R zsh command not found R base ege Eges MB
  • 在 MacOS 终端上运行 ffmpeg [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我对 MacOS 相当陌生 我发现使用终端来获取信息并不容易ffmpeg和我在 Window 上一样正常运行 我有 ffmpeg 二进制文件ffmpe
  • 在 bash 中使用单个命令为 shell 变量分配默认值

    我对 bash 3 00 shell 脚本中的变量进行了大量测试 如果未设置变量 则它会分配默认值 例如 if z VARIABLE then FOO default else FOO VARIABLE fi 我似乎记得有一些语法可以在一行
  • shell脚本中关联数组的时间复杂度

    我想知道在 shell 脚本中使用关联数组时如何构造 实现 另外 我想知道基于 shell 脚本的关联数组的时间复杂度是否是最佳的 因为我们可以使用字母和数字作为它们各自的键 编辑 他们使用什么哈希函数 如果您使用关联数组 则不能通过 使用
  • 如何在 swiftUI (macOS) 中检测按键按下和释放

    除了标题之外没什么可说的 我希望能够在按下按键和释放按键时 在 macOS 上 在 swiftUI 视图中执行操作 在 swiftUI 中是否有任何好的方法可以做到这一点 如果没有 有什么解决方法吗 不幸的是 键盘事件处理是其中一个令人痛苦
  • 通过特定分隔符删除字符串

    我的文件中有几列 其中第二列有 分隔符 我想删除第二列中的第一个 第三个和第四个字符串 并将第二个字符串留在该列中 但我有正常的分隔符空间 所以我不知道 input 22 16050075 A G 16050075 A G 22 16050
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • viewController 中的 Sprite 粒子系统动画

    I create a macOS single window application and add a Sprite Particle System file with template Stars and the visual effe
  • dyld:惰性符号绑定失败

    当我尝试运行时遇到一个奇怪的错误gatsby develop在新创建的 gatsby 项目中 这不应该与 gatsby js 静态站点生成器 有任何关系 因为我在不同的场合也遇到了相同的错误 当我跑步时gatsby develop在我的一个
  • 从 csv 文件中删除特定列,保持输出上的相同结构[重复]

    这个问题在这里已经有答案了 我想删除第 3 列并在输出文件中保留相同的结构 输入文件 12 10 10 10 10 1 12 23 1 45 6 7 11 2 33 45 1 2 1 2 34 5 6 I tried awk F 3 fil
  • shell脚本中的\r字符

    我在尝试执行 shell 脚本时收到以下错误 r command not found line 2 请提出同样的解决方案 以下是脚本中使用的初始行 bin sh if lt 1 then echo ERROR Environment arg
  • Java Swing For mac 中的 DJ Native Swing 浏览器

    我有一个用 Swing 制作的 Java 应用程序 并且使用了一个 DJ Native Swing 浏览器 当我尝试在 OS X 上使用它时 它抛出了一个NoClassDefFoundError尽管我添加了 swt jar 但始终如此 有人
  • 获取 Mojave 上的鼠标坐标

    我有一个非常基本的小命令行应用程序 可以在下次单击鼠标时获取鼠标坐标 import
  • 通过powershell运行ADB命令

    所以我尝试通过 powershell 脚本运行一些 ADB 命令 这是我正在尝试做的一个简单示例 adb shell echo in adb shell su root echo you are now root ls cd data da

随机推荐

  • 我将 .NET CORE 项目从 2.1 更新到 3.1,但在 Startup 类中出现一些错误

    我刚刚更新了 NET CORE 版本 我已经更新了所有的用法 但是在添加默认标识时 satrtup 类的ConfigureServices 方法中仍然存在错误 它只是给我一个错误 说 IServiceCollection 不包含 AddDe
  • 使用 JMS 中的 CCDT 文件连接到 IBM MQ

    我尝试使用 JMS 和客户端通道定义表 CCDT 连接到 IBM MQ 当我单独指定 MQ 属性时 我能够成功连接到 QueueManager 但是当我尝试使用 CCDT 文件时 出现以下异常 由于客户端通道定义表 CCDT 用于确定客户端
  • 删除 Azure 表中的通配符行而不进行查询

    有没有一种简单的方法可以在不查询的情况下删除Azure表存储中的行 例如 如果我想删除任何行PartitionKey A 无需取回所有内容并一一删除 REST API 支持这一点 使用 If Match http msdn microsof
  • 要转换为 nan 值的数组的零值

    我有一个1200 1200的数组 它的一些值为零 我想将零值转换为 numpy nan 值 这是我的解决方案 import numpy for i in range 1200 for j in range 1200 if data a i
  • 将图像尺寸(宽度和高度)保存在回形针中?

    任何回形针向导都知道在使用回形针保存图像时是否可以将图像尺寸 宽度和高度 保存在 2 个额外字段中 在回形针上传过程中如何获取此类数据 只是为了完整起见 尽管之前的答案已经给出了足够好的建议 您可以使用 Paperclip 事件处理程序而不
  • Docker - Celery 作为守护进程 - 未找到 pidfiles

    我似乎已经尝试了这里的所有解决方案 但似乎没有一个有效 我不确定我错过了什么 我试图通过我的 docker 容器将 celery 作为守护进程运行 root bae5de770400 itapp itapp etc init d celer
  • 从 SMS REACT NATIVE 读取消息

    我正在为一个内置反应本机的移动应用程序开发登录过程 https files slack com files pri T039NS2ED FHARU61LH image from ios jpg https files slack com f
  • Django 的 ORM 可以返回嵌套对象查询集吗?

    如果我有两个处于多对多关系的模型 如下所示 class Topping models Model name models CharField max length 50 class Pizza models Model name model
  • boost线程抛出异常“thread_resource_error:资源暂时不可用”

    我有类似于以下代码的代码 boost thread myThread unsigned char readbuffer bignumber unsigned char writebuffer bignumber for int i 0 i
  • 在 Databricks 中将变量从 Scala 传递到 Python

    我正在使用 Databricks 并尝试在同一个 Scala 笔记本中将数据帧从 Scala 传递到 Python 我使用以下方法将数据帧从 Python 传递到 Spark python python df registerTempTab
  • VB.NET读取文本文件中的某些文本

    我希望我的程序读取文本文件中的某些文本 例如 如果我有一个包含以下信息的文本文件 acc blah pass hello 我希望我的 vb net 应用程序得到帐户变量等于 blah 密码变量等于 hello 谁能告诉我该怎么做 Thank
  • offsetLeftAndRight() 到底做了什么?

    offsetLeftAndRight 到底做了什么 文档说 将此视图的水平位置偏移指定的像素量 那么 这是否意味着如果视图的左侧位置假设为 50 并且在其上调用 offsetLeftAndRight 20 那么视图将移动 20 像素并且其左
  • 使用单个对象将多个参数传递给函数?

    假设我有一个函数can t被改变 例如 add these lt function x y z x y z 我想将所有三个参数作为单个对象 如何将这个单个对象传递给函数 以便它将它们作为单独的输入进行评估 理想的结果是这样的args lt
  • PostgreSQL LIKE 子句中的正则表达式

    我被一个简单的正则表达式困住了 不知道我错过了什么 对正则表达式技能有点生疏 我试图匹配的表达式是 select from table where value like 00 1 9 third character should not b
  • 创建一个顶部有半圆的 CardView

    我非常喜欢设计登录屏幕 Something like this How Do I actually cut the card from the top so as to fill the drawable on top of it Any
  • 超出 Firebase (Cloud Firestore) 中每个数据库每秒 10k 写入的限制

    在阅读官方文档时 我发现 Cloud Firestore 允许更多并发连接 但每个数据库每秒写入的数量限制为 10k 如果我有 20k 并发用户 并且我的应用程序写入量很大 例如社交媒体平台 因此有可能超出写入限制 我应该采取什么策略来处理
  • 循环遍历 DirectoryEntry 或任何对象层次结构 - C#

    我目前正在开发一个应用程序 该应用程序使用 System DirectoryServices 命名空间创建 DirectoryEntry 对象并循环整个层次结构以收集信息 我不知道层次结构中每个 DirectoryEntry 对象的子条目数
  • 我的 Android 应用程序突然需要 AndroidManifest.xml 中未设置的权限。为什么?

    我有一个应用程序在过去几年中只做了很小的更改 昨天我向 Google Play 发布了一个错误修复程序 并注意到我的应用程序突然需要 5 个新权限 android permission ACCESS COARSE LOCATION andr
  • PHP - 使关联数组唯一,键 -> 值和值 -> 键

    我在 php 中遇到了一个小问题 我发现很难用语言解释 我有一个包含键值的关联数组 我想创建一个函数 或者如果已经有一个函数 它将接受一个数组作为输入并删除重复项 但两种方式都是如此 例如 在我的数组中 我有 a gt b a gt c b
  • 如何从 bash 脚本中识别当前的终端模拟器?

    我有一个脚本可以在 OS X 终端应用程序中打开一个新选项卡 并且我正在尝试添加对 iTerm2 的支持 不幸的是 在两个终端模拟器中打开选项卡的方法不同 我如何知道这两个中的哪一个正在被使用或打开 以有条件地运行正确的脚本 我不确定如何区