shell编程实现返回一个数组

作者&投稿:素泻 (若有异议请与网页底部的电邮联系)
shell函数怎么返回一个关联数组~

你想问得是php如何执行shell命令把?可以用system(),exec(),passthru()这三个函数实现虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的:system()输出并返回最后一行shell结果。exec()不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面。passthru()只调用命令,把命令的运行结果原样地直接输出到标准输出设备上。相同点:都可以获得命令执行的状态码例子:system("ls-al");  【使用之前要在php.ini中把safe_mode关闭】

a='ls | sort' 这可不是存一个数组噢。

a=('ls | sort')这才是一个数组

#!/bin/bash

func()
{
        START=$1
        END=$2

        awk -vstartt="$START" -vendt="$END" 'BEGIN{
                startm=mktime(gensub("-", " ", "g", startt) " 0 0 0")
                endtm=mktime(gensub("-", " ", "g", endt) " 0 0 0")

                for(i=startm;i<=endtm;i+=3600*24)
                        print strftime("%Y-%m-%d", i)
        }'
}

func "2013-10-1" "2013-10-5"


luneng8183

当然可以实现, 我给你看看你的环境吧。


M2M是谁?
M2M的个人资料 玛莉特(Marit Larsen)的个人资料: 全名:Marit Elisabeth Larsen 生日:1983年7月1日 星座:巨蟹座 出生地:Lenskog,挪威 身高:157cm 喜爱的食品:鸡肉,面条,汤 喜爱的饮料:水 喜爱的颜色: 暗红(就像我的吉他) 喜爱的音乐:任何与吉他有关的音乐...

M2M窈窕美眉资料英文版
9. To An End (feat.Thom Hell) 10. Come Closer 11. Poison Passion二、M2M算法模型宏观到微观(M2M)模型。类似于粒计算(Granular Computing)的思想,...本文分析了基于M2M模型的算法的一般过程和共同特性,设计和编程实现了三种基于M2M模型的算法:最近邻算法,凸包算法和寻径算法,并与相应的经典算法和最新研究...

如何在用C语言实现输出“hello world“
这是一个简单的输出问题 代码如下:include<stdio.h> int main(){ printf("hello world\\n");}

正则表达式判断字符串中包含数字,大写字符,小写字母,特殊符号中的几种...
代码如下:function passwordValidate(str){ var rC = { lW:'[a-z]',\/\/小写字母 uW:'[A-Z]',\/\/大写字母 nW:'[0-9]',\/\/汉字 sW:'[\\\ -\\\/\\\:-\\\@\\\[-\\\`\\\{-\\\~]'\/\/特殊字符 };...

昌邑市15052624770: shell函数怎么返回一个关联数组 -
乌勇感冒: # 实例演示shell函数返回数组,准确说应该是返回字符串,然后通过一定的构造得到一个数组# 重点在于自己怎么样去构造适合用数组存储的数据格式# 函数 thinker()# 功能 将附加在脚本末尾的 域名:IP 抽取出来,存储在字符串变量中,并返...

昌邑市15052624770: 如何把shell命令的输出按行存入数组 -
乌勇感冒: 例如:1)取目录下文件名 she=(`ls -1`) #存入数据she echo ${she[0]} #调用she第一个元素 echo ${she[1]}....注意:ls -1 而不是 ls -l2)取文件内容 我只会写脚本来实现了.

昌邑市15052624770: linux shell编程,怎么把一个存有文件若干数据的文件读到一个类似于数组的地方? -
乌勇感冒: 用C语言可以完成.你写个程序,然后用shell来调用它.

昌邑市15052624770: linux,shell如何把字符串变成数组? -
乌勇感冒: echo $url | cut -d , -f 1 cut是切割命令,-d表示分隔符,这里是逗号,-f表示取第几个,这里是第一个 注意和数组不一样,数组是取第0个.

昌邑市15052624770: shell脚本生成[4,9]范围内的随机整数,包含边界值4和9,并将随机数序列存放在一个数组中,脚本实现? -
乌勇感冒: #!/bin/sh declare -a arr #声明arr为数组 arr=(`seq 4 9 | awk 'BEGIN{srand();ORS=" "} {b[rand()]=$0} END{for(x in b) print b[x]}'`) echo ${arr[*]} #打印数组array的所有元素 exit 0 说明:生成[4,9]范围内不重复的随机整数,并保存到数组arr中.seq ...

昌邑市15052624770: 用shell执行的程序怎么取得返回值 -
乌勇感冒: shell中,$? 就是上一个执行命令或函数的返回码, 例如 执行命令xxxxx echo $? 就输出了执行命令xxxxx的返回码,当然也可以把$?保存到一个变量中,用于后续的计算或者其他判断逻辑.

昌邑市15052624770: 请教,shell如何取得sql执行的返回值 -
乌勇感冒: 个人用过的有两个办法: (1)利用变量(可以是数组)接收 (2)利用文件接收(将执行结果倒入某文件,然后读取该文件)

昌邑市15052624770: linux shell 命令定义和使用数组出错 -
乌勇感冒: 实际上,bash中可以直接对数组赋值的,不需要使用declare.而且取长度的用法${#var}也只能是在bash中.这些都不是符合POSIX标准的用法,而是bash所特有的.所以,要简单点的话,就将声明改为bash,即 #!/bin/bash.当然,还有两处小错,要仔细点:var =(1 2 3 3 5); #赋值时等号两边不能有空格 echo "${#var}; #引号不成对啊,童鞋,这里也可以不要引号的 命令后面的分号其实也是多余的,只要换行了,分号就不需要(当然加了也没错)

昌邑市15052624770: shell程序中如何去掉数组中的空值 -
乌勇感冒: 我这里用unset是可以的啊,数组长度变为了3,内容也对的.$ a=(1 2 3 4)$ unset a[1]$ echo ${#a[@]}3$ echo ${a[@]}1 3 4 你那里若还是不行的话,建议用循环去除.

昌邑市15052624770: 如何让php执行shell -
乌勇感冒: php给我们提供了system(),exec(),passthru()这三个函数来调用外部的命令.虽然这三个命令都能执行linux系统的shell命令,但是其实他们是有区别的: system() 输出并返回最后一行shell结果. exec() 不输出结果,返回最后一行shell结果,所有结果可以保存到一个返回的数组里面. passthru() 只调用命令,把命令的运行结果原样地直接输出到标准输出设备上. 相同点:都可以获得命令执行的状态码例子:system("/usr/local/bin/webalizer/webalizer");

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网