Linux:如何执行一条指令,并把执行结果按行划分存到数组中呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux:如何执行一条指令,并把执行结果按行划分存到数组中呢?相关的知识,希望对你有一定的参考价值。

例如第一行存到result[0],第二行存到result[1]中......跪求

例如:
1)取目录下文件名

she=(`ls -1`) #存入数据she

echo $she[0] #调用she第一个元素

echo $she[1]
....
注意:ls -1 而不是 ls -l

2)取文件内容
我只会写脚本来实现了。
参考技术A awk 'a[NR]=$0ENDfor(i=1;i<=NR;i++)print i,a' 参考技术B 这个是分好办,shell搞定啊,
私信一下了?

Java:如何使用Java来格式化Linux指令的返回结果呢?

Linux指令的返回结果如下
public 100M
2012 100M
2013 100M
2014 100M

如何将这个执行结果检出,并装到一个map中呢?

参考技术A 你用java执行这个命令嘛?如果是用java的runtime去执行的命令,如下实例代码可以实现:
String command = "echo HAHAHA"; //你执行的命令,放这里
String[] exec = "sh", "-c", command ;
Map map = new HashMap(); //结果放这里
BufferedReader br = null;
Process process =null;
String firstLine = null;
try
process = Runtime.getRuntime().exec(exec);
br = new BufferedReader(new InputStreamReader(process.getInputStream()));
String s = null;
while((s=br.readLine()) != null)
map.put(s.trim().split("\\s+")[0],s.trim().split("\\s+")[1]);

process.waitFor();

以上是关于Linux:如何执行一条指令,并把执行结果按行划分存到数组中呢?的主要内容,如果未能解决你的问题,请参考以下文章

如何在批处理中做到执行了一条指令后,等待计算机回应完成后再执行下一条指令?

Java内存区域的划分和异常

hive如何执行一条sql的例子

Java内存区域的划分和异常

Java:如何使用Java来格式化Linux指令的返回结果呢?

Linux 进程与线程四(加锁--解锁)