首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据写入文件

将数据写入文件
EN

Stack Overflow用户
提问于 2013-12-14 21:42:06
回答 1查看 80关注 0票数 1

我正在尝试将数据写入文件。这就是脚本。这很简单,而且也不正确。但是请帮我拿到输出。

代码语言:javascript
复制
#!bin/ksh
DATE=date +'%m/%d/%Y'_$CNTR_SEQ
file1=$1 # Signifies DATE config file
file2=$2 # Signifies MONT config file
file3=$3 # Signifies YEAR config file
file4=$4 # Signifies SEQN config file
file5=$5 # Signifies FILETYPE config 
file6=$6 # Signifies CNTR1 config file
file7=$7 # Signifies CNTR2 config file


for CNTR_DATE in {0..100}; do
    for CNTR_SEQ in {1..4}; do
        NEXT_DATE=$(date +%m-%d-%Y_$CNTR_SEQ -d "$DATE + $CNTR_DATE day")
        echo $NEXT_DATE
        if [ -f $5=TST ]; then
            printf "$3-$2-$1|$4|\n0000000|0\n00000" > echo TST_$NEXT_DATE.dat 
            # This is the content of file.This should be the file creation with
            # that date's name pattern.The contents of file is been written into 
            # a specific name pattern. Is this correct?
        fi
        cat /MYDIR/$echo
        # A file is creating in the  MYDIR /FILE_NAME path.
        exit(0)
    done
done
EN

回答 1

Stack Overflow用户

发布于 2013-12-17 04:56:55

很难预知你想要实现的目标。也许:

代码语言:javascript
复制
#!/bin/ksh
for days in {0..100}; do
    future_date=$(date -d "+$days days" +%m-%d-%Y)
    for seq in {1..4}; do
        file="/mydir/TST_${future_date}_${seq}.dat"
        if [ $5 = "TST" ]; then
            printf "$3-$2-$1|$4|\n0000000|0\n00000" > "$file"
        fi
    done
done

避免使用全部大写的变量名。有一天,你会使用一个名为PATH的变量,然后想知道为什么你开始看到"command not found“错误。

我完全同意评论“使用%Y-%m-%d”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20584026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档