Shell 在写函数的时候,有时候需要传递字符串,由于字符串中有空格,所以结果总是不对,下面写个小例子,解决这个问题:

#!/bin/bash

# value init
TT="adb shell ls -l /data/local/tmp/";
FINAL="";
loop_count=2; # LoopEx: excute a programm in a loop, $1 is program,$2 is loop count,
function LoopEx()
{
Ex=$1;
local loop_count=$2;
echo "Programm is $Ex, loop_count ==$loop_count"
for i in $(seq $loop_count); do
$Ex;
done;
} LoopEx $TT $loop_count

  这个输出的结果是:

Programm is adb, loop_count ==shell
seq: invalid floating point argument: shell

因为传递的字符串中有空格,解决这个问题如下,在调用函数传递参数的时候使用:

LoopEx "$TT" $loop_count 

得到正确的显示结果如下:

Programm is adb shell ls -l /data/local/tmp/, loop_count ==2
drwxrwxrwx root root 2010-01-01 23:10 CPlusPlus
-rw-rw-rw- root root 2 2014-08-07 01:54 PPAMonitorPort.pt
-rwxrwxrwx root root 153916 2014-04-17 08:33 libGLES_mali1.so
-rwxrwxrwx root root 10304 2014-04-17 08:42 libGLESv2Agent.so
-rwxrwxrwx root root 890744 2014-04-17 08:33 libppa.so
-rwxrwxrwx root root 259484 2014-04-17 08:34 librsagent.so
-rwxrwxrwx root root 471328 2014-04-17 08:33 libtunnel.so
drwxrwxr-x root root 2010-01-01 00:11 vp9Input
-rw-rw-rw- root root 24285 2014-08-07 02:30 vp9_inter_pred_4x4.cl
-rw-rw-rw- root root 40239 2010-01-01 23:56 vp9kernel.bin
-rwxrwxrwx root root 510012 2014-08-07 02:31 vpxdec
-rwxrwxrwx root root 509056 2014-07-18 07:59 vpxdec-cpu
drwxrwxrwx root root 2010-01-01 23:10 CPlusPlus
-rw-rw-rw- root root 2 2014-08-07 01:54 PPAMonitorPort.pt
-rwxrwxrwx root root 153916 2014-04-17 08:33 libGLES_mali1.so
-rwxrwxrwx root root 10304 2014-04-17 08:42 libGLESv2Agent.so
-rwxrwxrwx root root 890744 2014-04-17 08:33 libppa.so
-rwxrwxrwx root root 259484 2014-04-17 08:34 librsagent.so
-rwxrwxrwx root root 471328 2014-04-17 08:33 libtunnel.so
drwxrwxr-x root root 2010-01-01 00:11 vp9Input
-rw-rw-rw- root root 24285 2014-08-07 02:30 vp9_inter_pred_4x4.cl
-rw-rw-rw- root root 40239 2010-01-01 23:56 vp9kernel.bin
-rwxrwxrwx root root 510012 2014-08-07 02:31 vpxdec
-rwxrwxrwx root root 509056 2014-07-18 07:59 vpxdec-cpu

Shell如何传递字符串的更多相关文章

  1. 一篇详细的linux中shell语言的字符串处理

    1 cut是以每一行为一个处理对象的,这种机制和sed是一样的.(关于sed的入门文章将在近期发布) 2 cut一般以什么为依据呢? 也就是说,我怎么告诉cut我想定位到的剪切内容呢? cut命令主要 ...

  2. 【问题】Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数

    [问题]Asp.net MVC 的cshtml页面中调用JS方法传递字符串变量参数. [解决]直接对变量加引号,如: <button onclick="deleteProduct('@ ...

  3. 在Shell里面判断字符串是否为空

     在Shell里面判断字符串是否为空 分类: Linux shell2011-12-28 23:18 15371人阅读 评论(0) 收藏 举报 shell 主要有以下几种方法: echo “$str” ...

  4. JS 拼装代码的HTML onClick方法传递字符串

    有时会在JS中拼装HTML代码,这时在HTML中出现的onClick()方法中: 1.出现传递Num型的数据,直接拼装进去即可: 2.可能会出现传递字符串的情况,处理方法比较特殊,如下: a:直接字符 ...

  5. shell中截取字符串的方法总结

    shell中截取字符串的方法有很多种, ${expression}一共有9种使用方法. ${parameter:-word} ${parameter:=word} ${parameter:?word} ...

  6. shell脚本中字符串的常见操作及"command not found"报错处理(附源码)

    简介 昨天在通过shell脚本实现一个功能的时候,由于对shell处理字符串的方法有些不熟悉导致花了不少时间也犯了很多错误,因此将昨日的一些错误记录下来,避免以后再犯. 字符串的定义与赋值 # 定义S ...

  7. Shell脚本中字符串判空:使用-z 字符串长度为0时,为真,-n字符串长度不为0,为真。这两个都不靠谱【转】

    最近发现使用  -z   和  -n  来判断字符串判空,或不空时,很不靠谱. 使用下面的方法最可靠: if [ "x${value}" == "x" ]    ...

  8. shell如何传递变量到另一个脚本文件中

    http://www.jbxue.com/article/shell/20707.html本文介绍了shell脚本传递变量到另一个脚本文件中的方法,在脚本中调用另一脚本,即创建了一个子进程,感兴趣的朋 ...

  9. 如何在存储过程的IN操作中传递字符串变量

    原始SQL如下: SELECT MONTH(OrderTime) AS datetype, SUM(DeliveryCount) AS decount, Region FROM (SELECT dbo ...

随机推荐

  1. CentOS安装+配置+远程

    这篇博客我之前写在了csdn,转了过来,这篇是自己认为写的比较有技术含量的文章^_^ 最近和CentOS打了交到,其中遇到了很多问题,于是看了一些博客,解决了一些问题,但是都不是特别全面,所以想来一篇 ...

  2. ubuntu 初始

    1.命令行界面与图形界面 ctrl + alt + f1进入命令行界面 ctrl + alt + f7 切换图形界面 2.ubuntu 的wubi安装与卸载 第一:在win 系统下启动DOS,进入命令 ...

  3. SVG绘制圆形简单示例分享

    今天分享“svg绘制圆形”部分 1.简单圆形 效果图如下: 关键代码: <svg xmlns="http://www.w3.org/2000/svg" version=&qu ...

  4. [转]PHP Session原理分析及使用

    之前在一个叫魔法实验室的博客中看过一篇<php session原理彻底分析>的文章,作者从session的使用角度很好阐述了在代码运行过程中,每个环节的变化以及相关参数的设置及作用.本来想 ...

  5. C++指针例

    int num1=15;int num2=22; 状态一://const int *  不可以通过指针改变值,但是可以改变指向的变量//const int *p1=&num1;//std::c ...

  6. SQLSERVER与C#中数据类型的对应关系

    SQLSERVER与C#中数据类型的对应关系 ///<summary> ///数据库中与C#中的数据类型对照 ///</summary> ///<paramname=&q ...

  7. C#黑白棋制作~

    前些天自己复习一下C#语言 做了个黑白棋,望大家看一下,可能有些bug嘿嘿 链接如下 http://files.cnblogs.com/files/flyingjun/%E9%BB%91%E7%99% ...

  8. leetcode 组合题

    1.Subsets 代码1: class Solution { public: vector<vector<int> > subsets(vector<int> & ...

  9. JavaScript自学代码--(三)

    //通过 id 查找 HTML 元素 var x = document.getElementById("demo"); //通过标签名查找 HTML 元素 //本例查找 id=&q ...

  10. Emily姨妈家的猫

    按书上的样例,慢慢理解. 其实,JAVASCRIPT也应该可以写出正规点的,封装性好的代码. <html> <body> <script type="text/ ...