文档章节

linux shell 编程 8 for 循环删除文件

QH_C
 QH_C
发布于 2015/11/10 09:09
字数 546
阅读 68
收藏 0

实例:

#!/bin/bash

#  delete  importnewhouse data  logs shell

cd /www/autopublish.news.fang.com/auto_publishnews/logs/

for((i=1;i<100;i++));

do

n="20151106importnewhousedata.log.$i"

sudo rm $n

if [ 0 -eq $? ]

then

echo "delete  $i  ok !"

else

echo "delete $i failed"

fi

done


**************  for 循环  *************

来自网站

1、 for((i=1;i<=10;i++));do echo $(expr $i \* 4);done
2、在shell中常用的是 for i in $(seq 10)  /fro i in $(seq 1 10)
3、for i in `ls`

4、for i in ${arr[@]}   
5、for i in $* ; do 
6、for File in /proc/sys/net/ipv4/conf/*/accept_redirects; do 
7、for i in f1 f2 f3 ;do 
8、for i in *.txt 
9、for i in $(ls *.txt) 
for in语句与` `和$( )合用,利用` `或$( )的将多行合为一行的缺陷,实际是合为一个字符串数组
10、LIST="rootfs usr data data2" 
for d in $LIST; do 
    用for in语句自动对字符串按空格遍历的特性,对多个目录遍历 
11、for i in {1..10}
12、for i in stringchar {1..10}
13、awk 'BEGIN{for(i=1; i<=10; i++) print i}'


******************  seq 的用法**************

用于产生从某个数到另外一个数之间的所有整数
  例一:
  # seq 1 10
  结果是1 2 3 4 5 6 7 8 9 10
  例二:
  #!/bin/bash
  for i in `seq 1 10`;
  do
  echo $i;
  done
  或者用
  for i in $(seq 1 10)
  也可以

seq
-f, --format=FORMAT      use printf style floating-point FORMAT (default: %g)
-s, --separator=STRING   use STRING to separate numbers (default: /n)
-w, --equal-width        equalize width by padding with leading zeroes

-f 选项   指定格式
#seq -f"%3g" 9 11
9
10
11
% 后面指定数字的位数 默认是"%g", 
"%3g"那么数字位数不足部分是空格 
#sed -f"%03g" 9 11 这样的话数字位数不足部分是0 
% 前面制定字符串
seq -f "str%03g" 9 11
str009
str010
str011

-w 指定输出数字同宽   不能和-f一起用 
seq -w -f"str%03g" 9 11
seq: format string may not be specified when printing equal width strings
seq -w 98 101
098
099
100
101
输出是同宽的

-s 指定分隔符 默认是回车
seq -s" " -f"str%03g" 9 11
str009 str010 str011
要指定/t 做为分隔符号
seq -s"`echo -e "/t"`" 9 11

指定/n/n作为分隔符号
seq -s"`echo -e "/n/n"`" 9 11
19293949596979899910911
得到的是个错误结果
不过一般也没有这个必要 它默认的就是回车作为分隔符









© 著作权归作者所有

共有 人打赏支持
QH_C
粉丝 2
博文 75
码字总数 69153
作品 0
朝阳
程序员
私信 提问
《Linux基础知识及命令》系列分享专栏

《Linux基础知识及命令》系列分享专栏 本专题详细为大家讲解了Linux入门基础知识,思路清晰,简单易懂。本专题非常适合刚刚学习Linux的小白来学习,通过学习该专题会让你由入门达到中级的水平...

kaixin_code
12/01
0
0
嵌入式Linux学习基础规划篇

嵌入式的学习是需要日积月累的,是通过一点一滴的积累才能成为大神。下面来介绍一下嵌入式linux学习基础规划,目标是达到适应嵌入式应用软件开发、嵌入式系统开发或嵌入式驱动开发的基本素质...

创客学院
04/10
0
0
Shell脚本编程30分钟入门

什么是Shell脚本 示例 看个例子吧: #!/bin/shcd ~mkdir shell_tutcd shell_tut for ((i=0; i<10; i++)); do done 示例解释 第1行:指定脚本解释器,这里是用/bin/sh做解释器的 第2行:切换到...

quanpower
2014/03/23
0
0
9 个使用前必须再三小心的 Linux 命令

Linux shell/terminal 命令非常强大,即使一个简单的命令就可能导致文件夹、文件或者路径文件夹等被删除。 在一些情况下,Linux 甚至不会询问你而直接执行命令,导致你丢失各种数据信息。 一...

oschina
2014/11/06
8.7K
45
linux shell脚本编程学习总结

0.linux shell脚本编程 对于一些简单的操作,我们可以直接通过在linux 命令行执行就可以了,比如列出文件命令ls -l,但是有时候我们需要完成的任务需要连续执行多条linux命令,而且他们之间具...

i_am_alone
08/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周六乱弹 —— 你一口我一口多咬一口是小狗

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文 :分享Roy Orbison的单曲《She's a Mystery to Me》 《She's a Mystery to Me》- Roy Orbison 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
46
4
Spring源码学习笔记-1-Resource

打算补下基础,学习下Spring源码,参考书籍是《Spring源码深度解析》,使用版本是Spring 3.2.x,本来想试图用脑图记录的,发现代码部分不好贴,还是作罢,这里只大略记录下想法,不写太细了 ...

zypy333
今天
12
0
RestClientUtil和ConfigRestClientUtil区别说明

RestClientUtil directly executes the DSL defined in the code. ConfigRestClientUtil gets the DSL defined in the configuration file by the DSL name and executes it. RestClientUtil......

bboss
今天
19
0

中国龙-扬科
昨天
4
0
Linux系统设置全局的默认网络代理

更改全局配置文件/etc/profile all_proxy="all_proxy=socks://rahowviahva.ml:80/"ftp_proxy="ftp_proxy=http://rahowviahva.ml:80/"http_proxy="http_proxy=http://rahowviahva.ml:80/"......

临江仙卜算子
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部