0

我有这个代码

week=`date +%V_%d`
date=`date +%d%m%y`

#Cat to a file


        let tamano=`cat Prenum`
        file="White_prepago_${date}.txt"
        name="base_prepago_paqu_w$week_"
        cat WhiteList.txt | grep ",0" | sed '/^57/!s/^/57/'  | awk '{FS=","}{print $1}'> $file



# the number of lines of the file
let numlines=$2
#Must begin in the line in the file
let lines=$tamano+$2

num=$3


for ((i=1; i<=$num; i++))
do
   let d=$4+$i
   cat $file | head -$lines | tail -$numlines > base_$d
   let lines=$lines+$numlines

done
let lines=$lines-$numlines
echo $lines>Prenum

我正在使用 Linux 的 VM 中执行此代码并且可以正常工作,现在我打算在 Solaris 机器上运行此代码但无法正常工作,在 solaris 中文件运行但不能正常工作,因为创建了我编写的文件数量,但我的所有文件文件是 seim,在 linux 中创建我所有的文件,但会增加。代码必须在我编写的行中拆分文件

例如

 bash script.sh 5000 3 0

此代码从文件 base_1 开始创建 3 个 5000 行的文件:base_prepago_paqu_w$week_"。我没有使用拆分,因为我需要读取文件 Prenum 或 Posnum 中的数字。

在文件 Prenum 中有一个数字

$cat Prenum
 5008971

并且代码选择文件的范围,例如,如果数字是:5008971,我写bash script.sh 5000 3 0 的输出是从 5008971+5000 到 5008971+15000 行的 3 个文件。

你能帮我解决我的问题吗?或者其他适用于solaris的想法?

4

0 回答 0