关于unity(c#)调用shell脚本

Unity调用外部EXE或Shell命令 Unity调用外部EXE或Shell命令 本帖最后由 0!1! 于 2015-4-14 11:58 编辑 版权所有,转载须注明出处! 喜欢火影、喜欢Java、喜欢unity3D、喜欢游戏开发的都可以加入木叶村Q群:3790762271、开门见山的需求 有的时候,我们想把一些外部命令集成到Unity中,比如,你想通过点击Unity中的一个按钮,就更新SVN(假设该项目是受SVN管理的)。 那么,就涉 阅读详情
很多时候我们需要写一个shell脚本去执行一系列操作,例如:新建文件、文件移动、重命名以及调用其他程序。尤其unity开发者,常常有需求,截取摄影机镜头、录制视频等,我们会使用ffmpeg等其他工具合成gif图片或视频等等。。

贴上示例代码:
  • c#调用ffmpeg合成.gif图片:
        ProcessStartInfo psi = new ProcessStartInfo();
        psi.FileName = "/usr/local/bin/ffmpeg";
        psi.UseShellExecute = false;
        psi.RedirectStandardOutput = true;
        psi.Arguments = " -f image2 -framerate 30 -i /Users/muyichun/Desktop/video2/shot%d.png /Users/muyichun/Desktop/video3/1.gif";

        Process p = Process.Start(psi); 
        string strOutput = p.StandardOutput.ReadToEnd(); 
        p.WaitForExit(); 
        UnityEngine.Debug.Log(strOutput);
  • c#调用shell脚本,批量执行(推荐):
        ProcessStartInfo psi = new ProcessStartInfo();
        psi.FileName = "/bin/sh";
        psi.UseShellExecute = false;
        psi.RedirectStandardOutput = true;
        psi.Arguments = Application.dataPath + "/test.sh" + " arg1 arg2";

        Process p = Process.Start(psi); 
        string strOutput = p.StandardOutput.ReadToEnd(); 
        p.WaitForExit(); 
        UnityEngine.Debug.Log(strOutput);

test.sh文件:
echo $1
/usr/local/bin/ffmpeg -f image2 -framerate 30 -i /Users/muyichun/Desktop/video2/shot%d.png /Users/muyichun/Desktop/video3/1.gif
/usr/local/bin/ffmpeg -f image2 -framerate 30 -i /Users/muyichun/Desktop/video2/shot%d.png /Users/muyichun/Desktop/video3/2.gif
echo $2
最后:笔者在Mac Os上测试没问题,window上基本一致!
Unity-Powershell:用于管理EMC Unity阵列的PowerShell模块 立即下载

相关推荐

解决Unity不能调用shell脚本传递参数的问题

解决Unity不能调用shell脚本传递参数的问题

Unity中使用调用Shell的命令行

有的时候我们在做unity开发的时候需要去写一些工具编辑器之外的话通常会使用python,但有时也会使用shell命令行来完成一些操作,比如我们在写一自动化打包的时候 经常会使用一些linux指令来进行一些对文件或者文件夹的操作,这个时候使用shell就很实用。所以下面是一个shell的工具类来帮助我们可以在unity中更加轻松的使用 shell的一些指令。 c#代码如下: 例子:使用MSBuild编译出Dll 原文:https://tangmingcc.com/views/Unity%E5%AE%9E%E

KindSuper_liu的专栏 2342

在ubuntu上安装FastSufer【本机安装】

其实说是安装,只需要将文件下载并解压即可。推荐教程注意版本:在下面这个网址根据你的操作系统找到最新的版本安装。比如我的操作系统为Ubuntu 20.04.5,因此我安装ubuntu20-7.4.1的freesurfer打开~/.bashrc在~/.bashrc文件中添加以下三行关闭~/.bashrc更新~/.bashrc安装tcsh注意每次进入终端使用freesurfer时需要输入FREESURFER_HOME路径根据freesurfer的文件夹所在位置自己修改。

Xingwen_future的博客 2008

C#执行Shell命令

 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Diagnostics;//加入,使用进程类,创建独立进

Houluoxuan_168的专栏 1万+

西门子与汇川伺服脉冲连接(速度模式)

如何使用西门子PLC与汇川伺服进行脉冲连接

2301_77347966的博客 1万+

【图文步骤】EC-Engineer部分操作详细步骤

EC-Engineer部分功能详细使用手册

weixin_42212468的博客 6164

从C#调用PowerShell的另一种解决方案

哪些元素可用于在.NET环境中从C#构建支持PowerShell的最简单类。在PowerShell中调用命令时的步骤顺序。处理结果和错误。

寒冰屋的专栏 3214

智能座舱芯片大乱斗:高通8155 vs 联发科MT8676 vs 华为麒麟990A,谁才是性价比之王?

本文深入对比了高通SA8155P、联发科MT8676与华为麒麟990A三款主流智能座舱芯片的性能、生态与成本。文章从CPU/GPU/NPU算力、开发生态、成本模型及典型应用场景出发,分析了各自在智能座舱领域的优势与适用性,为开发者与车企选型提供了实战参考,并探讨了智能座舱芯片未来的技术趋势。

yhn456789的博客 799

c语言中调用shell脚本返回值问题分析

c语言中调用shell脚本 C程序调用shell脚本共有三种方式:system()、popen()、exec系列函数 1)system(shell命令或shell脚本路径);          执行过程:system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数string字符串所代表的命令,此命令执行完后随即返回原调用的进程。在

network__yang的专栏 4136

【DRAM存储器六十五】DDR5介绍--训练相关之MPC、Read Training Pattern、Read Preamble Training Mode

简述DDR5 MPC操作和读训练时颗粒输出pattern的配置

highman110的博客 359

SAP-ABAP:SAP信贷管理核心:CL_UKM_BUPA_FACTORY类完整解析与实践指南

SAP信贷管理核心类CL_UKM_BUPA_FACTORY解析 CL_UKM_BUPA_FACTORY是SAP信贷管理(UKM)模块的核心类,作为业务伙伴信贷数据的中央控制台,它提供: 统一入口:标准化实例化客户/供应商信贷对象 主要功能: 获取单条/批量业务伙伴数据 安全保存数据变更 封装底层数据访问逻辑 典型应用场景: 信贷主数据批量维护 自动化限额调整 订单信贷实时检查 性能优化建议: 使用批量方法替代循环单条处理 合理设置字段选择 实施缓存策略 该类通过简洁API简化复杂信贷操作,是SAP信贷管理开

baidu_35680696的博客 1208

c#调用linux命令,Mac环境下C#调用shell命令

正在优化unity打包工程。想用c#代码调用shell脚本来实现打包xcode导出ipa.由于对C#代码不是很熟悉。调用shell脚本的时候遇到一些问题。现在把调用shell脚本的C#代码在此记录下。使用terrminal调用shell脚本,可以使用终端直观看到执行结果。string command = "/Applications/Utilities/Terminal.app/Contents/...

weixin_39977586的博客 1151

科研绘图系列:R语言circos图(circos plot)

科研绘图系列:R语言circos图(circos plot)

专注生信领域 3430

Unity自动打包——Shell交互

Unity自动打包

司军礼的博客 1681

Jenkins自动化部署服务到Kubernetes环境

通过Jenkins实现自动化部署可以大大提高软件交付的效率和质量。本文介绍的部署流程涵盖了从代码编译、Maven依赖管理、Docker镜像构建到Kubernetes部署的完整流程,并提供了通知机制以便及时了解部署状态。特别需要注意的是Maven与私服的配置,这是确保构建过程能够正常访问依赖包的关键。通过Jenkins的凭据管理功能,可以安全地管理私服的认证信息,避免敏感信息泄露。在实际应用中,您可能需要根据具体的项目需求和环境特点调整部署脚本。

探索云原生与智能化驱动下的安全运维新范式。关注DevSecOps、可观测性、AIOps等前沿领域,与您共赴技术前沿。 527

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Unity调用外部Shell脚本或exe

有时候项目里需要执行一些shell脚本,来完成诸如文件移动,命令行打包,自己转换文件 格式什么的工作,省去一些手工劳动,然后这时候就需要用shell了。 网上也有一些关于调用方法的文章,这里就说一下我自己尝试时遇到的问题。。。 讲到c#里操作进程的方法,那肯定就是System.Diagnostics.Process这个类没跑了 代码如下: using UnityE

TxNet 4499

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

Jenkins 调用 Shell 脚本,在Shell脚本中调用 Unity 类方法,传递参数给Unity

Jenkins 调用 shell 脚本,在 shell脚本中调用Unity类方法,传递参数

lq 802

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

使用shell脚本实现unity自动打包ipa工具

使用shell脚本实现unity自动打包ipa工具shell脚本中重点代码逻辑plist配置文件设置C#中重点代码使用方法其他参考 先说下我这的需求: 1.一键生成ipa (废话) 2.info.plist和.xcodeproj文件使用已设置完成的标准模板替换 (省去代码设置xcode工程配置的工作量,偷懒) 3.需要保留字符表文件 (什么是字符表文件?) 4.需要在打包时使用配置文件,控制xco...

qq_14974975的博客 3111

linux脚本 exe,Unity调用外部Shell脚本或exe

有时候项目里需要执行一些shell脚本,来完成诸如文件移动,命令行打包,自己转换文件格式什么的工作,省去一些手工劳动,然后这时候就需要用shell了。网上也有一些关于调用方法的文章,这里就说一下我自己尝试时遇到的问题。讲到c#里操作进程的方法,那肯定就是System.Diagnostics.Process这个类没跑了代码如下:01.using UnityEngine;02.using UnityE...

weixin_42138376的博客 343

Unity自动化构建实战:从命令行到脚本实现轻量级CI/CD

持续集成与持续交付(CI/CD)是现代软件开发流程中的核心实践,旨在通过自动化构建、测试和部署来提升软件交付效率与质量。其核心原理在于将重复性手动操作转化为可重复执行的脚本,确保环境一致性和过程可追溯性。在游戏开发领域,Unity项目的自动化构建具有显著技术价值,能够解决多平台打包、版本管理、团队协作等工程痛点。通过Unity Editor提供的命令行接口,结合Shell或Python脚本,开发者可以快速搭建一套轻量级构建流水线,实现从代码拉取、依赖解析到产物归档的全流程自动化。这种方案尤其适合独立开发者或

weixin_27943395的博客 233

Mac环境下C#调用shell命令

Mac环境下C#调用shell命令 https://www.jianshu.com/p/68bea8d2e618 正在优化unity打包工程。想用c#代码调用shell脚本来实现打包xcode导出ipa.由于对C#代码不是很熟悉。调用shell脚本的时候遇到一些问题。现在把调用shell脚本的C#代码在此记录下。 使用terrminal调用shell脚本,可以使用终端直观看到执行...

kuangben2000的博客 2383

unity 通用shell运行脚本

Unity在mac环境下跑shell脚本的案例 Process proc = new Process { StartInfo = { FileName = "sh", WorkingDirectory = buildFolderPath, //运行路径 Arguments = "build.sh",//脚本名 UseSh

thrt520asd的博客 1405

Jenkins发布unity手机apk包和shell脚本

Date:20170928 github:https://github.com/hiramtan/Jenkins_unity 为了以后兼容mac发布,选择了shell脚本方式. 1.shell输出窗口乱码,需要将编码调整为utf8 2.提示下面的这个错误,需要转换为utf8无Bom格式 bash: #!/bin/sh: No such file or directo

Unity 1000

linux 调用外部exe,Unity调用外部EXE或Shell命令

1、开门见山的需求有的时候,我们想把一些外部命令集成到unity中,比如,你想通过点击Unity中的一个按钮,就更新SVN(假设该项目是受SVN管理的)。那么,就涉及到一个Unity调用外部可执行文件、bat/shell等。这个需求是挺常见的,也是不难实现的。2、简单明了的实现我们先封装一个命令调用的函数:[C#] 纯文本查看 复制代码private static void processComm...

weixin_35949064的博客 607

[实用工具]Unity调用外部EXE或Shell命令

版权所有,转载须注明出处!喜欢火影、喜欢Java、喜欢unity3D、喜欢游戏开发的都可以加入木叶村Q群:3790762271、开门见山的需求有的时候,我们想把一些外部命令集成到unity中,比如,你想通过点击Unity中的一个按钮,就更新SVN(假设该项目是受SVN管理的)。那么,就涉及到一个Unity调用外部可执行文件、bat/shell等。这个需求是挺常见的,也是不难实现的。2、简单明了的实

游戏开发者 1万+
上一篇: 关于Unity3d五国战争笔记
下一篇: java一条for循环打印多维数组
慕一春
博客等级 码龄12年 19粉丝 75原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值