#include<stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <stdlib.h>
#include <sys/prctl.h>
#include <signal.h> int main()
{
pid_t pid;
char *cmd="bash testshell.sh";
//FILE *fResult=popen("/bin/bash -c testbash.sh","r");
//fResult.close();
pid=fork();
if(pid>)
exit();
else if(pid==)
{ //prctl(PR_SET_PDEATHSIG,SIGKILL);
execl("/bin/bash","/bin/bash","-c",cmd,NULL);
exit();
}
else if(pid<)
{
printf("create faild\n");
exit();
}
return ;
}

testshell.sh文件

date>testshell_log.log
echo "----------------------------">>testshell_log.log
java -jar TestOracle.jar>>testshell_log.log
echo "----------------------------">>testshell_log.log
date>>testshell_log.log>>testshell_log.log

在shell文件中可以执行各种linux命令,也可以写 if else fi 语句

linux C 调用shell程序执行的更多相关文章

  1. Linux应用程序调用其他程序执行

    一.system 1.作用 在Linux应用程序中调用另一个程序: 2.用法 system("/sbin/ifconfig"): 二.popen 1.作用 调用另一个程序执行,同时 ...

  2. Linux命令行上程序执行的那一刹那!

    转自:http://www.cppblog.com/cuijixin/archive/2008/03/14/44463.html by falcon<zhangjinw@gmail.com> ...

  3. 通过ant调用shell脚本执行adb命令

    在Hudson或者Jenkins中利用ant的exec 来调用shell命令,通过shell脚本来执行adb shell命令,可以正常执行,不会出现在ant中直接调用adb shell出现的假死情况. ...

  4. 用java代码调用shell脚本执行sqoop将hive表中数据导出到mysql

    1:创建shell脚本 touch sqoop_options.sh chmod 777 sqoop_options.sh 编辑文件  特地将执行map的个数设置为变量  测试 可以java代码传参数 ...

  5. windows下建立文件的换行符^M导致linux下的shell脚本执行错误的解决方式

    常常在windows下编辑的文件远程传送到linux下的时候每行末尾都会出现^M.这将导致shell脚本执行错误,主要是由于dos下的编辑器和linux下的编辑器对文件末行的回车符处理不一致导致. 主 ...

  6. java操作linux,调用shell命令

    import org.junit.jupiter.api.Test; import java.io.BufferedReader; import java.io.IOException; import ...

  7. 【转】 linux下的awk程序执行

    #!/bin/awk -f awk脚本开头使用这个命令,赋予这个文本文件以执行的权限.这样做之后,你就可以在命令行中用类似于下面这样的方式调用并执行这段awk程序了. BEGIN和END的大括号必须紧 ...

  8. JAVA 调用exe程序执行对应的文件 (个人用于编译Java文件)

    需求: 需要利用Java程序,来调用计算机本身的黑窗口,来将特定的Java文件编译成对应的字节码文件. 实现思路: 通过调用Java的Runtime类,每个 Java 应用程序都有一个 Runtime ...

  9. kettle在linux下面用于shell脚本执行:转换或者作业

    1 将windows下面创建好的转换,放到Linux某一个文件夹下面.如:把0816_em.ktr文件放到/home/cfj/kettle/testdemo下面. 注意里面的数据库用户名和密码可能需要 ...

随机推荐

  1. mysql 查看某个库下面某个表的所有列字段, columnName

    mysql 查看某个库下面某个表的所有列字段 select COLUMN_NAME as columnName from information_schema.COLUMNS where table_ ...

  2. 【转】VSCode Web开发插件

    Web开发必备插件 1.Beautify - HTML.CSS.JS.JSON语法高亮 语法高亮,你懂的.   Beautify 2.Auto rename tag - 自动重命名标签 在HTML, ...

  3. Java如何处理异常方法?

    在Java编程中,如何处理异常方法? 本例展示了如何使用System类的System.err.println()方法处理异常方法. package com.yiibai; public class E ...

  4. Git -- 远程仓库简介

    到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...

  5. ubuntu -- 安装memcached

    Memcached的安装依赖libevent.它是memcached所依赖的异步事件通知库,因此在安装memcached之前先要安装libevent. ubuntu安装软件的方法通常有两种 第一种:使 ...

  6. ubuntu 14.04安装 DevStack的脚本配置文件——localrc

    本文ubuntu 14.04安装 DevStack的脚本配置文件——localrc,本文件名已经逐渐被取代,但是出于后向兼容性,使用该文件仍然可以为stack.sh安装脚本指定安装DevStack时的 ...

  7. winform程序开机自动启动

    app.manifest <requestedExecutionLevel level="requireAdministrator" uiAccess="false ...

  8. Java项目性能持续优化中……

     尽量使用StringBuilder和StringBuffer进行字符串连接, 参考链接: Java编程中“为了性能”尽量要做到的一些地方

  9. springboot+shiro+redis(单机redis版)整合教程

    相关教程: 1. springboot+shiro整合教程 2. springboot+shiro+redis(集群redis版)整合教程 3.springboot+shiro+redis(单机red ...

  10. MyEclipse远程调试Tomcat

    程序就是这么一个神奇的东西,有时你的一个项目,在本机上运行得还是好好的,可当你把这货放到了服务器上,同样的条件就是结果不一样.于是就灰常想看一下程序在远程运行时候的状态,希望让程序在远程运行,还可以在 ...