随笔 - 192,  文章 - 0,  评论 - 2,  阅读 - 25万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

1.通过c直接实现

复制代码
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int fileNum=0;
char fileNam[10];

char fileName(){
    fileNam[10]=0;
    fileNum += 1;
    char str[4];
    char s1[]="./image/";
    char s2[]=".yuv";
    sprintf(str,"%d",fileNum);
    sprintf(fileNam,"%s%s%s",s1,str,s2);     
}

int main(int argc,char* argv[])
{
    int fd_src,fd_dst;
    char buf[245120];
    int n;
    
    if((fd_src=open("./raw.data",O_RDONLY))<0)
    {
        perror("open src");
        exit(EXIT_FAILURE);
    }
    
    while((n=read(fd_src,buf,sizeof(buf)))>0){
        if (n != 245120)
        {
            perror("file size small");
            close(fd_src);
            exit(EXIT_FAILURE);
        }

        //lseek(fd_src,245120,SEEK_CUR);
        fileName();    
                
        if (fd_dst = open(fileNam,O_CREAT|O_WRONLY,0666)<0)
        {
            perror("open dst fail");
            close(fd_src);
            exit(EXIT_FAILURE);
        }
    
        write(fd_dst,buf,n);
    
        printf("copy successfully\n");
        close(fd_dst);
        system("./move.sh");
    }
    printf("copy successfully\n");
    close(fd_src);
    exit(EXIT_SUCCESS);    
}
View Code
复制代码

2.通过调用system函数执行脚本

复制代码
#! /bin/sh 

file_name(){
    rm ./image/1.txt
    touch ./image/1.txt
    chmod 777 ./image/1.txt
    ls -l image | cut -d ' ' -f 10 | cut -d '.' -f 1 > ./image/1.txt
    num=$(tail ./image/1.txt -n 1)
    echo "$num"
    num=$(($num+1))
    echo "$num"
}
move (){
    file_name
    mv ./image/0.yuv ./image/"$num".yuv    
}
move
View Code
复制代码

 

posted on   Malphite  阅读(1047)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示