<1>

上例子

for i in f1 f2 f3; do
@echo $i;
done

执行结果:

f1

f2

f3

但是,请注意:如果是在makefile 中写,要写成这个样子:

all:
for i in f1 f2 f3; do\
@echo $$i; \
done

如果 @echo $$i; 后面没有反斜线,则会出现:

/bin/sh: -c:行3: 语法错误: 未预期的文件结尾

这是因为如果是如下:

all:

  for i in f1 f2 f3; do\

    @echo $$i;

  done

会被认为 没有 done, 要么要在 @echo $$i;后加反斜线表示shell代码尚未结束, 要么就写成如下的一行:

all:

  for i in f1 f2 f3; do\

    @echo $$i;  done

或者干脆:

all:

  for i in f1 f2 f3; do @echo $$i; done

<2>

all :
  @echo no\
space
  @echo no\
  space
  @echo one \
space

  @echo one\
   space

生成如下的四个输出:

nospace
nospace
one space
one space

这里我插入下:

第一个是  no 直接跟反斜线,下一行无空格,也无tab符号,直接space,输出 nospace

第二个是 no 直接跟反斜线,下一行,有tab符号,然后跟space,输出 nospace

第三个是 one 后有一个空格,然后是跟反斜线,下一行,有tab符号,然后跟space,输出 one space

第四个是 one 后跟反斜线,下一行,有tab符号,然后跟一个空格,然后跟space,输出 one space

all : ; @echo 'hello \
world' ; echo "hello \
world"

会激活一个shell,执行下列指令:

echo 'hello \
world' ; echo "hello \
world"

根据shell对 反斜线的解释,会形成下列输出:

hello \
world
hello world

Shell的 for 循环小例子的更多相关文章

  1. Python,while循环小例子--猜拳游戏(三局二胜)

    Python,while循环小例子--猜拳游戏(三局二胜) import random all_choice = ['石头', '剪刀', '布'] prompt = '''(0)石头 (1)剪刀 ( ...

  2. JS的for循环小例子

    1.输出1-100的和 var sum = 0; for(var i=1;i<=100;i++){ sum = sum + i; } document.write(sum); 2.输出1-100 ...

  3. 使用let实现循环小例子

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  4. Python,for循环小例子--99乘法表

    一.99乘法表 for i in range(1, 10): for j in range(1, i + 1): print('%sx%s=%s ' % (j, i, j * i), end='') ...

  5. [Python]Python 使用 for 循环的小例子

    [Python]Python 使用 for 循环的小例子: In [7]: for i in range(5): ...: print "xxxx" ...: print &quo ...

  6. Linux python3安装/shell脚本/if/循环/函数

    python3安装 安装过程 安装包: wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgztar -xvf Python-3.7 ...

  7. java即时通信小例子

    学习java一段时间了,今天写来一个即时通信的小例子练手在其过程中也学到了一些知识拿出来和大家分享,请路过的各位大神多多赐教... 好了下面讲一下基本的思路: 首先,编写服务器端的程序,简单点说吧就是 ...

  8. 一:AndEngine的小例子

    首先导入架包,下载:http://download.csdn.net/detail/duancanmeng/4060082 lib文件夹中 像我们写android程序entends Activity一 ...

  9. Ruby小例子

    1.ruby定义函数与执行函数案例 def fact(n) ) end end print fact() 结果: 24 2.一个小例子 words = [)] print "guess?\n ...

随机推荐

  1. 修改sudoers

    使用visudo命令 [root@898f990a8808 etc]# visudo

  2. Spring MVC 定时任务注解说明

    一.注解说明. Spring 自带的定时任务执行@Scheduled注解,可以定时的.周期性的执行一些任务.查看@Scheduled的注解可以看到有以下三种: 1.1 String cron() de ...

  3. Pikachu-XXE(xml外部实体注入漏洞)

    XXE -"xml external entity injection"既"xml外部实体注入漏洞".概括一下就是"攻击者通过向服务器注入指定的xml ...

  4. C#MVC用ZXing.Net生成二维码/条形码

    开篇:zxing.net是.net平台下编解条形码和二维码的工具. 首先创建新项目 选择MVC模板  添加一个控制器  在项目引用中的引用ZXing 进行联网下载 控制器需要引用 后台控制器   pu ...

  5. js 时间格式转换

    js时间格式转换 格式化时间转成时间戳 //格式化转时间戳(单位秒) function strtotime(strtime) { strtime = strtime.substring(0, 19); ...

  6. 控制input中只能输入固定格式内容

    onkeyup 事件会在键盘按键被松开时发生,onafterpaste 是粘贴触发,没有这个事件用onblur吧,失去焦点时发生输入完,点其他地方就会执行. <html lang="e ...

  7. oracle Insert 一次插入多条记录

    oracle Insert 一次插入多条记录有两种方法: 1)Insert All Into table_name values ... insert all into table_name valu ...

  8. BZOJ4668 冷战(LCT维护最小生成树)

    BZOJ4668 冷战(LCT维护最小生成树) 题面 自己找去 HINT 这道题就是动态加边,然后查询u,v两点最早什么时候联通,强制在线.思考一下,最早什么时候联通不就等同于维护最小生成树吗(把这条 ...

  9. 常用网络命令 在windows下

    1.增加一条临时静态路由 格式:route add <目的网络地址> mask <目的网络子网掩码> <网关> 实例:route add 0.0.0.0 mask ...

  10. R语言函数化编程笔记1

    R语言函数化编程笔记1 notes:有一个不错的网站叫做stack overflow,有问题可以从上面找或者搜索答案,会有大佬相助. 在github上面可以找到很多R的扩展包,如果自己额修改被接受,那 ...