• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            天下

            記錄修行的印記

            loop cp 代碼

            //測試工具
            #include <unistd.h>
            #include 
            <cstring>
            #include 
            <cstdlib>
            #include 
            <string>
            #include 
            <sys/socket.h>
            #include 
            <netinet/tcp.h>
            #include 
            <sys/ioctl.h> 
            #include 
            <netinet/in.h>
            #include 
            <arpa/inet.h>
            #include 
            <dirent.h>    
            #include 
            <sys/time.h>
            #include 
            <assert.h>
            #include 
            <errno.h>
            #include 
            <sys/types.h>
            #include 
            <sys/stat.h>
            #include 
            <fcntl.h>
            #include 
            <assert.h>

            using namespace std;

            void Path_AddSlash(char* pszPath)
            {
                assert(pszPath
            !=NULL);
            #ifdef WIN32
                PathAddBackslash(pszPath);
            #else
                
            int nLen = strlen(pszPath);
                
            if (pszPath[nLen-1]!='/')
                {
                    pszPath[nLen] 
            = '/';
                    pszPath[nLen
            +1= '\0';
                }
            #endif
            }


            #ifndef WIN32
            unsigned 
            int GetTickCount()
            {
                
            struct timeval tv;
                
            if(gettimeofday(&tv, NULL)!= 0)
                    
            return 0;
                
            return (tv.tv_sec * 1000)+(tv.tv_usec/1000); 
            }
            #endif

            string Path_GetBaseName(const string& strPath)
            {
                
            const char* pszPath = strPath.c_str();
            #ifdef WIN32
                
            char name[256];
                
            char ext[256];
                _splitpath(pszPath,NULL,NULL,name,ext);
                strcat(name,ext);
                
            return string(name);
            #else
                
            return string(basename(pszPath));
            #endif
            }

            // 目錄是否存在
            bool IsDirectory(char *p_dir)
            {
                DIR 
            *dir = NULL;

                dir 
            = opendir(p_dir);
                
            if( NULL == dir )
                {
                    
            return false;
                }
                
            else
                {
                    closedir(dir);
                    
            return true;
                }
            }

            long GetLocalFileSize(const char* szFileName)
            {
                
            struct stat f_stat;
                
            if (stat(szFileName, &f_stat) == -1) {
                    
            return -1;
                }
                
            return (long)f_stat.st_size;
            }


            int main(int argc,char* argv[])
            {
                
            char szCmd[512];
                
            char szDstFileName[256];
                
            char szDir[256];

                
            if (argc!=5)
                {
                    printf(
            "Usage:%s <filename> <dirpath> <begin> <end> \r\n",argv[0]);
                    
            return 255;
                }
                
                
            char* pszFileName = argv[1];
                
            int nBegin    = atoi(argv[3]);
                
            int nEnd    = atoi(argv[4]);

                strcpy(szDir,argv[
            2]);

                
            if (GetLocalFileSize(pszFileName) < 0)
                {
                    printf(
            "error:<%s> is not exist \r\n",pszFileName);
                    
            return 255;
                }
                
                
            if (!IsDirectory(szDir))
                {
                    printf(
            "error:<%s> is not directory \r\n",szDir);
                    
            return 255;
                }
                
                unsigned 
            int dwBeginTime = GetTickCount();

                Path_AddSlash(szDir);
                
            char* pszExtName = strchr(pszFileName,'.');
                
            if (pszExtName==NULL)
                {
                    pszExtName 
            = (char*)"";
                }

                
            int ret = 0;
                
            int i = 0;
                
            for (i=nBegin;i<nEnd;i++)
                {
                    sprintf(szCmd,
            "cp %s %s%06d%s",pszFileName,szDir,i,pszExtName);
                    puts(szCmd);
                    ret 
            = system(szCmd);
                    
            if (ret!=0)
                    {
                        
            break;
                    }
                }
                unsigned 
            int dwEndTime = GetTickCount();
                puts(
            "\r\n-------------------------------------------------------------------");
                printf(
            "from:%d,to:%d \r\n",nBegin,nEnd);
                printf(
            "begin time:%u,end time:%u \r\n",dwBeginTime,dwEndTime);
                printf(
            "elapse ms:%u \r\n",dwEndTime - dwBeginTime);
                
            return 0;
            }

            posted on 2012-12-06 14:37 天下 閱讀(329) 評論(0)  編輯 收藏 引用 所屬分類: Linux編程

            <2011年9月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678

            導航

            統計

            常用鏈接

            留言簿(4)

            隨筆分類(378)

            隨筆檔案(329)

            鏈接

            最新隨筆

            搜索

            最新評論

            久久久久亚洲AV无码专区网站| 欧美精品乱码99久久蜜桃| 久久se精品一区二区| 久久久久女教师免费一区| 久久一本综合| 久久婷婷五月综合色奶水99啪| 久久国产精品一区二区| 亚洲国产成人久久综合野外 | 亚洲综合婷婷久久| 日产久久强奸免费的看| 久久久久久九九99精品| 久久无码AV中文出轨人妻 | 99久久精品免费看国产| 久久久久99这里有精品10| 色综合久久久久网| 色综合久久无码中文字幕| 色欲综合久久躁天天躁| 亚洲国产精品久久久久| 国内精品久久久久影院薰衣草| 国产成人无码精品久久久久免费 | 日本道色综合久久影院| 天天爽天天狠久久久综合麻豆| 久久九九久精品国产免费直播| 久久婷婷五月综合97色一本一本| 久久精品国产99久久丝袜| 91精品国产91久久| 久久精品免费一区二区三区| 久久久av波多野一区二区| 国内精品九九久久精品| 久久久久国产精品人妻| 久久精品aⅴ无码中文字字幕不卡 久久精品成人欧美大片 | 亚洲国产欧洲综合997久久| 久久久久人妻一区精品果冻| 国内精品免费久久影院| 国产福利电影一区二区三区久久久久成人精品综合 | 久久久久97国产精华液好用吗| 久久精品国产一区二区三区日韩| 国产日产久久高清欧美一区| 久久99精品国产麻豆| 久久99精品国产一区二区三区| 精品少妇人妻av无码久久|