Ubuntu中gnome-terminal的使用

2023-05-16

基本使用

gnome-terminal命令用于打开一个新的终端,直接在命令行就可以打开一个新的终端

gnome-terminal

打开后自动最大化

gnome-terminal --maximize

打开后全屏

gnome-terminal --full-screen

设置标题

gnome-terminal --title="new title"

打开多个终端,多个tab

gnome-terminal --window --window #打开两个
gnome-terminal --window --tab --window --tab --tab #打开两个,第一个两个tab,第二个3个tab

设置打开的位置和大小(宽度x高度+左侧偏移量+上方偏移量)

gnome-terminal --geometry=80x25+10+10

 指定终端的工作目录

gnome-terminal --working-directory=/home/roo/桌面

 终端缩放 –zoom

gnome-terminal --working-directory=/home/roo/桌面  --zoom=2
gnome-terminal --working-directory=/home/roo/桌面  --zoom=1.5
gnome-terminal --working-directory=/home/roo/桌面  --zoom=0.5

启动后自动执行命令

有两个参数可以实现这个功能,-e和-x,这两个区别在于:

  • -e 可以出现多次,如果在所有--window前面,表示对所有window和tab起作用,如果在--window或者--tab后面,表示只针对这个tab执行,要注意-e后面只能有一个参数,也就是说如果有空格,需要用引号,具体见后例
  • -x 只能出现一次,在-x后面的所有内容,均认为是要执行的命令,所以可以出现空格,这些命令是针对所有tab都执行的

比如:

gnome-terminal -e ls
gnome-terminal -x ls

这两个的执行结果都一样,就是新的终端闪一下就没了,有几种办法:
一种是修改terminal的配置,在terminal点右键,选择Profiles->Profile Preferences,然后找到Title and Command,里面有一项When command exits,后面选择为Hold the terminal open,然后就可以了

第二种是把结果重定向给less,这样less执行完之前,是不会退出的

gnome-terminal -x ls|less

第三种是在bash里面再启用一个bash

gnome-terminal -x bash -c "ls; exec bash"
gnome-terminal -e 'bash -c "ls; exec bash"'

注意最后一个命令是exec bash,如果直接写bash也行,相当于开了一个子shell,这样有个缺点,就是直接按关闭按钮的话,会提示还有程序在运行,需要注意的是,这里执行的命令,在调用.bashrc之前,所有.bashrc的所有配置都无效,如果需要用到.bashrc里面的内容,有个变通的办法,在.bashrc最后加上一句

--------------------.bashrc--------------------
其他内容
#最后加上这句
evel "$RUN_AFTER_BASHRC"
-----------------------------------------------

然后在写命令的时候,修改RUN_AFTER_BASHRC这个变量,就可以实现让.bashrc调用这个命令

gnome-terminal -x bash -c 'export RUN_AFTER_BASHRC="ls --help"; exec bash'

或者下面的写法比较简单(注意对所有tab生效),也不会自动关闭了

RUN_AFTER_BASHRC="ls" gnome-terminal

例子:

gnome-terminal --title="bot1" -e 'bash -c "docker exec -it bot1 /bin/bash; exec bash"'  --window --tab --tab --tab --tab --tab  --geometry=100x25+10+10
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu中gnome-terminal的使用 的相关文章

随机推荐

  • ISP和IQ调试

    什么是ISP isp image signal process 图像信号处理 xff0c 这是技术image signal processor 图像信号处理器 这是设备本质 xff1a 通过数字运算来修补前端采集的不理想数据 xff0c 尽
  • cortex-m3中寄存器

    简介 Cortex M3 是一个 32 位处理器内核 内部的数据路径是 32 位的 xff0c 寄存器是 32 位的 xff0c 存储器接 口也是 32 位的 CM3 采用了哈佛结构 xff0c 拥有独立的指令总线和数据总线 xff0c 可
  • RGBD-SLAM(一)——深度摄像机

    工欲善其事必先利其器 我们先从能够获取RGBD数据的相机开始谈起 首先我们来看一看其分类 一 根据其工作原理主要分为三类 xff1a 1 双目方案 xff1a xff08 1 xff09 原理 xff1a http blog csdn ne
  • 软件执行的流程

    什么是编译原理 代码执行分为2个部分 compilers 编译器 1 将代码编译成可执行文件 xff0c 汇编代码或者字节码 xff0c MDK就是一个编译器interpreters 解释器 1 执行编译器生成的可执行文件 xff0c mc
  • 编译器过程概述

    Lexical Analysis xff08 词法分析 xff09 词法分析的目的是将程序文本划分为单词 xff0c 或者我们在编译器中所说的 xff0c 标记利用程序文本中的空格 xff0c 分号等符号来识别程序文本 Parsing xf
  • 编程语言的一些答疑

    为什么会有这么多中编程语言 因为需求是多种多样的 xff0c 为一种语言实现所有需求是非常困难的 为什么会有新的编程语言 实现一个新的编译器并不困难 xff0c 几个人就可以了 xff0c 大型的编译器可能也就十几个人 xff0c 真正的成
  • 【串口系列】不定长接收多种方式

    目录 背景 声明 开发环境 正文 一 接收中断 43 空闲中断 二 接收中断 43 T35定时器中断 T35定时器 三 空闲中断 43 DMA 43 循环队列 背景 在单片机开发过程中 xff0c 串口通讯是一种非常常用的串行通通讯方式 x
  • 迭代器学习笔记

    本文是学习 STL源码剖析 时的学习笔记 1 迭代器是一种smart pointer 迭代器是一种类 xff0c 其包装了原生指针 xff0c 并重载了operator operator gt operator 61 operator 43
  • linux中gdb调试出现buffer overflow detected,program terminated with signal SIGABRT Aborted

    strcpy str1 str2 或memcpy p1 p2 size 极易出错 一定要确保str1 p1已经申请缓存 xff0c 且缓存空间充足 本次出错地方为 xff1a linux下文件地址较长 xff0c str1只申请了40个字节
  • Git系列一:Git安装 git gui here和git bash here的区别

    Git简介 xff1a Git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比 说白了就是代码版本的控制系统 据个人实测 xff0c 在写论文的时候 xff0c 会有很多论文备份 xff0c 很不方便 xff0c Git对Word
  • VirtualBox虚拟机配置ssh与宿主机互通,实现文件传输

    在virtualbox中安装好Ubuntu16 04之后 xff0c 由于virtualbox与主机之间的文件拖放总是失败 已经安装好了增强功能 xff0c 双向复制 xff0c 文件拖放功能 xff0c 但还是出现问题 xff0c 因此搭
  • catkin_make编译报错:/usr/bin/ld: 找不到 -lxxx

    Linux下编译程序的时候 xff0c 出现 usr bin ld cannot find lxxx的错误 xff0c 主要的原因是找不到相应的动态库 xff0c 库文件没有导入到ld检索目录中 比如找不到 xff1a usr bin ld
  • Altium designer的工程文件都被改成SolidWorks2022了,且无法修改默认的启动程序的解决办法:

    安装soildworks2022后就发现电脑里的PCB工程文件除了 xx PcbDoc 默认打开方式是AD xff0c 其他的默认打开方式都是SoildWorks 而且右键更改属性里的默认打开方式也无法解决问题 解决办法 xff1a 需要修
  • printf输出bool值 | printf转换符

    bool类型是当整形输出的 bool c 61 false printf 34 d n 34 c 1 xff0e 转换说明符 a A 浮点数 十六进制数字和p P 记数法 C99 c 字符 d 有符号十进制整数 f 浮点数 包括float和
  • Cmake升级 更新 Ubuntu16.04 + ROS

    重要提示 千万不要卸载 Ubuntu原有的cmake xff0c 否则之前经过原有cmake编译过的文件将也会被删除 xff0c 比如 ros 千万不要使用下面这句命令删除原有的 cmake xff01 xff01 xff01 xff01
  • Ubuntu下扫描同一局域网的其他设备IP

    1 安装arp scan sudo apt get install arp scan 2 使用ifconfig查看本机IP地址 xff0c 一般有线在interface en0 eth0 无线在wlan0上 ifconfig 箭头中所指是我
  • C/C++基础 C语言预编译宏__LINE__、__FILE__、__DATE__、__TIME__、__FUNCTION__

    ANSIC标准定义了以下6种可供C语言使用的预定义宏 xff1a LINE 在源代码中插入当前源代码行号 FILE 在源代码中插入当前源代码文件名 DATE 在源代码中插入当前编译日期 注意和当前系统日期区别开来 TIME 在源代码中插入当
  • linux下每次git clone不需输入账号密码的方法

    有的仓库有很多的子模块 submodule 当clone的时候每个子模块都会让输入一次账户密码 xff0c 不胜其烦 xff0c 解决方法如下 xff1a 在 下 xff0c touch创建文件 git credentials 用vim编辑
  • Ubuntu创建新用户的两种方法

    组里的服务器是Ubuntu系统 xff0c 跑实验的话需要远程访问 xff0c 这样的话需要在服务器上创建一个自己的账户 xff0c 本文记录一下在Ubuntu系统下创建新用户的过程 xff08 服务器的远程访问一般通过ssh来实现 xff
  • Ubuntu中gnome-terminal的使用

    基本使用 gnome terminal命令用于打开一个新的终端 xff0c 直接在命令行就可以打开一个新的终端 gnome terminal 打开后自动最大化 gnome terminal maximize 打开后全屏 gnome term