当前位置:  技术问答>linux和unix

SHELL 编程时要求用分模块编写各应用程序,然后由主菜单程序调用各子程序模块。主菜单如何调用子程序的呢?

    来源: 互联网  发布时间:2016-12-26

    本文导语:  如:  The ULIB Program Hierarchy Chart ULIB 调用 EDIT,如果 ULIB代码如下: $ cat -n ULIB 1 # UNIX library 2 # ULIB: This program is the main driver for the UNIX 3 # library application program. It shows a brief  4 # startup message an...

如: 
The ULIB Program Hierarchy Chart

ULIB 调用 EDIT,如果 ULIB代码如下:


$ cat -n ULIB
1 # UNIX library
2 # ULIB: This program is the main driver for the UNIX
3 # library application program. It shows a brief 
4 # startup message and then displays the main menu.
5 # It invokes the appropriate program according to the 
6 # user selection.
7 BOLD=`tput smso`  #将粗体显示的终端代码保存在BOLD中
8 NORMAL=`tput rmso`  #将正常显示的终端代码保存在NORMAL中
9 export BOLD NORMAL   # 使上述变量成为全局变量
10 # show the title and a brief message before showing
11 # the main menu
12 tput clear               #清屏
13 tput cup 5 15            #置光标于5行15列
14 echo ”${BOLD}Super Duper UNIX Library” # 以粗体显示
15 tput cup 12 10            #置光标于12行10列
16 echo ”${NORMAL}This is the UNIX library application”
17 tput cup 14 10 ;          #置光标于14行10列
18 echo ”Please enter any key to continue..._bc”
19 read answer               # 读用户输入
20 error_flag=0             #将error_flag初始化为0
21 while true              # 一直循环
22 do
23   if [ $error_flag -eq 0 ]      #检查错误
24   then
25     tput clear                  # 清屏
26     tput cup 5 10
27     echo ”UNIX Library - ${BOLD}MAIN MENU${NORMAL}”
28     tput cup 7 20;echo ”0:${BOLD}EXIT${NORMAL} this program”
29     tput cup 9 20 ; echo ”1: ${BOLD}EDIT${NORMAL} Menu”
30     tput cup 11 20 ; echo ”2: ${BOLD}REPORTS${NORMAL} Menu”
31     error_flag=0             # 重置error_flag
32   fi
33 tput cup 13 10 ; echo ”Enter your choice>_bc”
34   read choice                   #读用户选择
35 #
36 # case construct for checking the user selection
37 #
38   case $choice in               #检查输入
39      0 ) tput clear ; exit 0 ;;
40      1 ) EDIT ;;              # 调用EDIT程序
41      2 ) REPORTS ;;           # 调用REPORT程序
42      * ) ERROR 20 10       # 调用ERROR程序
43       tput cup 20 1 ; tput ed #清除从光标处到屏幕底部的部分
44       error_flag=1 ;;     # 设置错误标志
45   esac
46 done
47 exit 0                    # exit the program 


接下来,EDIT直接命名为EDIT,放在和ULIB同一个目录,但是运行ULIB,选择1时,却不能调用 EDIT,为什么呢?
在SHELL编程中,主程序怎么调用 子程序模块呢?

|
要在你ulib文件中包含edit程序,类似c的include作用。

在你的edit程序中
. /你的edit程序

|
加绝对路径试试

    
 
 

您可能感兴趣的文章:

  • shell脚本如何调用另外一个shell脚本的函数?
  • C调用shell时,能否给shell传递参数
  • 如何编写Shell,当SQL执行完毕后,继续调用Shell命令。
  • 请问 怎么样在C中调用一个 shell,得到shell中一个参数的值
  • 求助关于Java调用shell再传值给shell的问题
  • 用shell调用api接口能实现吗?100分就是你的了
  • 如何用shell调用jar包!
  • 想在C程序中调用Shell脚本,咋办???
  • 请问:C语言中system怎样调用shell,谢谢!急!!!!!
  • 如何在shell 中调用 外部程序
  • 求助!!shell调用问题
  • 如何在程序中调用SHELL Library驱动中的命令
  • shell脚本里的函数怎么调用??
  • shell程序调用问题(一点点难度)
  • shell 调用java程序出错
  • java调用shell中出现的问提
  • C调用SHELL命令执行结果
  • shell调用c显示输出的问题
  • system调用shell命令时的一个疑问
  • C语言调用shell脚本后,通过何种方法能获取脚本中变量的值
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 怎么用Shell脚本自动选择有菜单的模块啊,谢谢!100分
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 不同类型的shell*(K SHELL , C SHELL) 用命令怎么切换?
  • linux bash shell命令:grep文本搜索工具简介
  • 我在执行shell时,想在shell里直接向mysql数据库插入数据,我该如何写shell。
  • Linux下指定运行时加载动态库路径及shell下执行程序默认路径
  • 菜鸟问问题:shell是什么呢?普通的ls、cp、pwd这些命令算不算shell呢?如何把自己写的文件变成shell呢?
  • linux bash shell命令:文本搜索工具grep中用于egrep和 grep -E的元字符扩展集
  • 傻瓜问题,请问shell编程和shell脚本编程的关系
  • linux bash shell命令:文本搜索工具Grep命令选项及实例
  • javascript开源软件 iis7站长之家
  • linux bash shell命令:文本搜索工具grep正则表达式元字符集(基本集)
  • 请问“当前shell”和“子shell”的区别?
  • 怎么知道当前是B_SHELL 还是C_SHELL
  • 用户登陆后运行某SHELL退出SHELL就回到LOGIN是怎么作到的?
  • 怎么写shell代码 写好shell怎么运行?
  • 请问一个shell中如何获取这个shell自身抛出的错误?
  • 非登录shell是什么 意思,和登录shell有什么区别啊
  • Solaris 8中修改root的shell为一个非法的Shell后怎么办?
  • 各位Shell高人,如何取得Shell的第10个入口参数?$10不行啊,急!
  • shell 编程 执行shell新建多个终端 并执行程序
  • 如何在一台机器上的shell中执行另外一台机器上的shell


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3