Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops AIX中的“For循环”_Loops_For Loop_Find_Aix - Fatal编程技术网

Loops AIX中的“For循环”

Loops AIX中的“For循环”,loops,for-loop,find,aix,Loops,For Loop,Find,Aix,肯定有人能指出我做错了什么。。。 无法使其在find命令的所有结果中正确循环。 在AIX中运行这个 基本上,我希望它找到所有的文件1天前,然后猫到一个文件中的所有 #! /bin/sh p1='/MSS-Storage/data/DataExport/runlog' p2='/MSS-Storage/apps/scripts' x=1 find $p1/* -mtime -1 -type f >> $p2/tmp.txt for period in `cat $p2/tmp.t

肯定有人能指出我做错了什么。。。 无法使其在find命令的所有结果中正确循环。 在AIX中运行这个

基本上,我希望它找到所有的文件1天前,然后猫到一个文件中的所有

#! /bin/sh

p1='/MSS-Storage/data/DataExport/runlog'
p2='/MSS-Storage/apps/scripts'
x=1

find $p1/* -mtime -1 -type f >> $p2/tmp.txt

for period in `cat $p2/tmp.txt`

do
        echo "************************Export $x*************************/
                *************************************************" > $p2/`date +summary.\%Y\%m\%d_\%H\%M.log`
        cat $period > $p2/`date +summary.\%Y\%m\%d_\%H\%M.log`
                x=$x+1

done

我会使用没有空间的ksh shebang线。 MSS存储是否如开始斜杠所示位于根级别? 如果将查找结果附加到tmp.txt,则该文件每次运行时都会变大。我想你想覆盖这个文件。您可以跳过tmp.txt文件重定向查找结果。 在循环内,您应该使用>>您不想覆盖您的结果,但我将在循环外重定向。 date命令应该在循环之外,只确定一次日期 用x=x+1可以将1添加到x中 这将导致:

#!/bin/ksh

p1='/MSS-Storage/data/DataExport/runlog'
p2='/MSS-Storage/apps/scripts'

x=1

find $p1/* -mtime -1 -type f | while read period; do
   echo "************************Export $x*************************/
      *************************************************" 
   cat $period
   (( x = x + 1 ))
done > $p2/summary.$(date +'%Y%m%d_%H%M').log