• <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 代碼

            //測(cè)試工具
            #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 天下 閱讀(331) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): Linux編程

            <2016年5月>
            24252627282930
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(4)

            隨筆分類(lèi)(378)

            隨筆檔案(329)

            鏈接

            最新隨筆

            搜索

            最新評(píng)論

            99精品国产综合久久久久五月天| 久久无码高潮喷水| 蜜臀久久99精品久久久久久小说| 欧美一区二区久久精品| 无遮挡粉嫩小泬久久久久久久| 国产农村妇女毛片精品久久| 亚洲va久久久久| 久久久久人妻精品一区二区三区| 性做久久久久久久久浪潮| 伊人久久大香线焦AV综合影院 | 久久精品国产亚洲5555| 热re99久久精品国99热| 91精品国产91久久| 久久中文娱乐网| 精品久久久久久成人AV| 久久久久久久波多野结衣高潮 | 久久午夜无码鲁丝片秋霞| 91久久精品国产成人久久| 狠狠色丁香久久婷婷综合| 久久国产精品视频| 93精91精品国产综合久久香蕉| 久久久久av无码免费网| 日韩欧美亚洲综合久久影院Ds| 国产精品亚洲美女久久久| 久久亚洲AV成人无码电影| 久久精品一本到99热免费| 久久久久久久久66精品片| 久久精品国产一区二区三区| 久久99精品综合国产首页| 丁香五月综合久久激情| 久久青草国产手机看片福利盒子| 精品久久久久香蕉网| 久久国产精品99国产精| 久久午夜无码鲁丝片| 中文字幕乱码人妻无码久久| 97精品国产97久久久久久免费 | 久久综合九色欧美综合狠狠| 青春久久| 久久免费看黄a级毛片| 亚洲午夜无码久久久久| 精品久久久久久久久午夜福利|