您可以将其与export -f一起使用,就像@kojiro的上面的注释中指出的那样.

# Define function.

my_func() {

// Do cool stuff

}

# Export it, so that all child `bash` processes see it.

export -f my_func

# Invoke gnome-terminal with `bash -c` and the function name, *plus*

# another bash instance to keep the window open.

# NOTE: This is required, because `-c` invariably exits after

# running the specified command.

# CAVEAT: The bash instance that stays open will be a *child* process of the

# one that executed the function - and will thus not have access to any

# non-exported definitions from it.

gnome-terminal -x bash -c 'my_func; bash'

借助一些技巧,您可以不用export -f,而可以假设运行该函数后保持打开状态的bash实例本身不需要继承my_func.

声明-f返回my_func的定义(源代码),因此只需在新的bash实例中重新定义它即可:

gnome-terminal -x bash -c "$(declare -f my_func); my_func; bash"

再一次,如果需要,您甚至可以在其中挤压export -f命令:

gnome-terminal -x bash -c "$(declare -f my_func);

export -f my_func; my_func; bash"

linux bash函数里面调用命令行,Linux-在gnome-terminal -x中运行bash函数相关推荐

  1. linux禁用打印切换服务命令行,linux下启用或禁用打印机的打印操作

    启用或禁用打印机的打印操作 1.enable 和 disable 命令 enable 和 disable 命令控制打印机打印还是停止打印打印队列中的请求.当您禁用打印机时,打印机将停止打印队列中的请求 ...

  2. linux多个文件打包命令行,Linux下文档的压缩和打包命令

    首先要弄清两个概念:打包和压缩. 打包是指将一大堆文件或目录变成一个总的文件: 压缩则是将一个大的文件通过一些压缩算法变成一个小文件. 为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对 ...

  3. linux多个文件打包命令行,linux命令五十七之tar命令;linux多个文件压缩打包到一个压缩文件...

    tar命令linux 能够用来压缩打包单文件.多个文件.单个目录.多个目录.shell Linux打包命令_tarspa tar命令能够用来压缩打包单文件.多个文件.单个目录.多个目录..net 经常 ...

  4. linux查看网卡的驱动命令行,Linux下查看网卡驱动和版本信息

    Linux下查看网卡驱动和版本信息 查看网卡生产厂商和信号 查看基本信息:lspci 查看详细信息:lspci -vvv # 3个小写的v 查看网卡信息:lspci | grep Ethernet 查 ...

  5. linux防火墙开启某端口命令行,linux上防火墙 开启某个端口

    linux下防火墙 开启某个端口 直接在/etc/sysconfig/iptables中增加一行: -A RH-Firewall-1-INPUT -m state –state NEW -m tcp ...

  6. linux压缩一个文件的命令行,linux下用命令行解压缩文件

    tar -zxvf install_flash_player_11_linux.x86_64.tar.gz 这是最一般的做法,其中tar后面的参数"zxvf"其实每个字母都是可选的 ...

  7. linux查看网卡的驱动命令行,linux查看网卡驱动模块信息

    1.查看网卡使用的驱动[root@slavetwo ~]# ethtool  -i em1 driver: tg3 version: 3.122 firmware-version: FFV7.4.8  ...

  8. 高效Linux用户需要了解的命令行技能

    高效Linux用户需要了解的命令行技能 出处: Quora   译文出处: 凌坤(@灵犀志趣_凌坤) 最近在Quora上看到一个问答题目,关于在高效率Linux用户节省时间Tips.将该题目的回答进行 ...

  9. 【Linux学习】之访问命令行

    [Linux学习]之访问命令行 文章目录 [Linux学习]之访问命令行 一.基础知识 二.练习 1.使用 date 命令来显示当前的日期和时间. 2.以12小时制显示当前时间(例如,11:42:11 ...

最新文章

  1. numpy.transpose()方法的使用,该方法其实并没有改变数据的几何位置,只是取数据的角度不同
  2. 年入百万还是低龄低收入?9.04亿网民的真实面目,都藏在这些数据里
  3. Android View坐标系
  4. HTTP协议那些不得不说的事
  5. atan与atan2的区别
  6. 求数组里面的最大值和最小值
  7. JAVA第六章第6题,java第六章例题源代码
  8. mysql修改的值子查询语句_MySQL的SQL语句 - 数据操作语句(13)- 子查询(13)
  9. 4.2 算法之数论 185 反正切函数的应用 python
  10. Python笔记-安装python虚拟环境及配置opencv及通过opencv识别颜色
  11. ubuntu下安装ipm包
  12. Blog从Hexo迁移至Wordpress
  13. 让程序最小化到任务栏的时候隐藏
  14. Atitit.播放系统规划新版本 v4 q18 and 最近版本回顾
  15. mschart 控件
  16. 【题解】「THUPC 2017」体育成绩统计 / Score
  17. wordpress主题制作,wordpress主题模板制作
  18. Debian系统源码安装usb网卡驱动
  19. 2023最新最全git安装教程,保姆级手把手式安装!!!
  20. 【SGU 448】Controlled Tournament(状态压缩动态规划)

热门文章

  1. 2013驾考科目三考试难点解析
  2. 解决:Unexpected token (START_OBJECT), expected START_ARRAY: need JSON Array to contain As.WRAPPER_ARRA
  3. chrome 开启 JSONview 方法,让json数据格式化显示
  4. Shell编程入门基础上
  5. C#任务调度——LimitedConcurrencyLevelTaskScheduler
  6. linux 下php多版本安装
  7. 第1章 Express MongoDB 搭建多人博客
  8. 无需格式转换直接发布DWG图纸到Autodesk Infrastructure Map Server(AIMS) 2013
  9. Forward框架的逆袭:解析Forward+渲染
  10. python实例31[文件夹清理]