快捷搜索:

Linux Shell函数返回值

LinuxShell函数返回值

  怎么查找asp源码可以看到mytest3在return了以后其实没有直接返回,而是执行了循环体后的语句,同时看到mytest4中也是一样,同时,在mytest4中,对全局变量的修改也无济于事,全局变量的值根本就没有改变。这个是什么原因那?

  笔者认为,之所以return语句没有直接返回,是因为return语句是在管道中执行的asp教程,管道其实是另一个子进程,而return只是从子进程中返回而已,只是while语句结束了。而函数体之后的语句会继续执行。

  同理,全局变量在子进程中进行了修改,但是子进程的修改没有办法反应到父进程中,全局变量只是作为一个环境变量传入子进程,子进程修改自己的环境变量,不会影响到父进程。

  因此在写shell函数的时候,用到管道(cmd &后台进程也一样)的时候一定要清楚此刻是从什么地方返回。

  其实在shell中,函数的返回值有一个非常安全的返回方式,即通过输出到标准输出返回。因为子进程会继承父进程的标准输出,因此,子进程的输出也就直接反应到父进程。因此不存在上面提到的由于管道导致返回值失效的情况。

  这个方式虽然好使,但是有一点一定要注意,不能向标准输出一些不是结果的东西,比如调试信息,这些信息可以重定向到一个文件中解决,特别要注意的是,用到比如grep这样的命令的时候,一定要记得1>/dev/null 2>&1来避免这些命令的输出。

  Linux file命令用于辨识文件类型。通过file指令,我们得以辨识该文件的类型。语法file [-bcLvz][-f <名称文件>][-m <魔法数字文件>...][文件或目录...]file 是通过查看文件的头部信息来获取文件类型,而不是像 Win...查看详情

  Linux下的两种定时执行任务的方法:at命令,以及crontab服务,小编整理了关于这2个命令的详细用法,希望大家学习后能够更加深入的理解。(1)at命令假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了。设置at命令很简单,指示定运行的时间,那么就会在哪个...查看详情

  前言创建交互式shell脚本最常用的方法是使用菜单。提供各种选项可以帮助脚本用户了解脚本能做什么,不能做什么;通常菜单脚本会清空显示区域,然后显示可用的选项列表。本文给大家详细介绍了shell创建文本菜单与窗口部件的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细...查看详情

  简介: FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上...查看详情

  使用Shell脚本在Linux服务器上能够控制、毁坏或者获取任何东西,通过一些巧妙的攻击方法黑客可能会获取巨大的价值,但大多数攻击也留下踪迹。当然,这些踪迹也可通过Shell脚本等方法来隐藏。寻找攻击证据就从攻击者留下的这些痕迹开始,如文件的修改日期。每一个 Linu...查看详情

  前言相信大家应该都有所体会,shell脚本可以说作用非常大,在服务器领域,用shell操作事务可比手动点击要方便快捷得多了。虽然只是文字界面,但是其强大的处理功能,会让各种操作超乎想象。而且,也可以将这些习惯移植到日常的工作当中,提升办事效率。其实shell语法很简单,基本上就是...查看详情

  Linux 下没有百度网盘客户端,用浏览器下载速度慢得急死人鼠标移到链接处, 右键, 然后复制链接接着在终端里输入axel -n 50 -o filename.ext “粘贴链接到此处”axel 是下载程序名, -n 后面数字是线程数,多少自己决定, -o 后面下载到本机上 保持...查看详情

  一、概述为禁止普通用户su至root,需要分别修改/etc/pam.d/su和/etc/login.defs两个配置文件。二、详细配置(1)去除/etc/pam.d/su文件中如下行的注释:#auth required pam_wheel.so use_uid(2...查看详情

  Linux中的bz2压缩格式的实例详解一 语法bzip2 源文件压缩为bz2格式,不保存源文件bzip2 -k 源文件压缩之后保留原文件注意:bzip2命令不能压缩目录bzip2 -d 压缩文件解压缩,-k保留压缩文件bunzip2 压缩文件解压缩,-k保留压缩文件二...查看详情

  Linux链接命令的实例详解一 语法ln -s [源文件] [目标文件]命令英文含义:link功能描述:生成链接文件选项:-s 创建软链接 二 硬链接特征原文件和硬链接文件删除其中任何一个都没问题。三 硬链接实战[root@localhost ~]# cd test[root@l...查看详情

您可能还会对下面的文章感兴趣: