记录1——loadrunner 浏览一个目录以及它的所有子目录直至浏览完到没有子目录为止(空目录或者文件)
2014-09-17 10:49
393 查看
需求:浏览一个目录以及它所有子目录直至所有目录浏览完到文件位置
//主函数 list_dir() { //从顶层目录开始逐个浏览 int i; for(i=1; i <= lr_paramarr_len("entry_doc_ids"); i++){ listDir((lr_paramarr_idx("entry_doc_ids",i))); } return 0; } //功能函数1 //释放数组里的变量 int lrlib_paramarr_delete(char* paramarr_name) { int i; int num_elements; char* element_name = (char*)malloc(strlen(paramarr_name) + strlen("_count") + sizeof(NULL)); // TODO: Check that the parameter array exists num_elements = lr_paramarr_len(paramarr_name); for(i=1; i<=num_elements; i++) { sprintf(element_name, "%s_%d", paramarr_name, i); lr_free_parameter(element_name); } sprintf(element_name, "%s_count", paramarr_name); lr_free_parameter(element_name); free(element_name); return i; // total number of elements in the parameter array. } //功能函数2 //递归浏览目录 listDir(const char* dir_gns) { //lr_start_transaction("list_dir"); int length; int j; char* subGnssParamName = (char*)malloc(2048); char* subSizesParamName = (char*)malloc(2048); strcpy(subGnssParamName, dir_gns + (strlen (dir_gns) - 32)); lr_message(subGnssParamName); strcat(subGnssParamName, "_sub_gnss"); strcpy(subSizesParamName, dir_gns + (strlen (dir_gns) - 32)); strcat(subSizesParamName, "_sub_sizes"); lr_save_string (dir_gns, "tmp_gns"); web_reg_save_param (subSizesParamName, "LB=\"size\":", "RB=}", "Ord=ALL", "Search=Body", LAST); web_reg_save_param (subGnssParamName, "LB=\"docid\":\"", "RB=\",", "Ord=ALL", "Search=Body", LAST); web_custom_request ("list_dir_transaction", "URL=http://{ip}:{efsp_port}/v1/dir?tokenid={token_id}&method=list&userid={user_id}", "Method=POST", "Mode=HTTP", "Body={\"docid\":\"{tmp_gns}\"}", LAST); for (j =1; j <= lr_paramarr_len(subSizesParamName); j++ ){ if (strcmp(lr_paramarr_idx(subSizesParamName,j), "-1") == 0) { listDir(lr_paramarr_idx(subGnssParamName,j)); //是目录 } else { //是文件 lr_message("是文件!!"); } } lrlib_paramarr_delete (subGnssParamName); lrlib_paramarr_delete (subSizesParamName); free(subGnssParamName); free(subSizesParamName); //lr_start_transaction("list_dir"); return 0; }
相关文章推荐
- 编写一个程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径。
- 编写一个Python程序,能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径
- 写一个遍历目录下所有文件以及子目录的函数
- 采用多线程和生产者消费者模式来实现对于一个目录以及所有子目录下的文件内容的搜索,打印出包含指定关键字的行.
- 在一个目录及其所有子目录下所有的文件中查找某个单词
- 在linux中怎样用命令完全拷贝一个目录下的所有文件(包括隐藏文件以及文件夹)到另外一个目录下
- C++ 删除一个文件目录下的所有文件以及目录
- linux下批量修改目录以及子目录里的所有文件的时间
- Java作业:给定任意一个目录 ,以树形方式展示出该目录中的所有子目录和文件。另外,在展现的时候将目录排在上面,文件排在下面。每一层要加上缩进
- touch一个目录及其下所有嵌套子目录中的文件
- 如何touch一个目录及其下所有嵌套子目录中的文件?
- 如何touch一个目录及其下所有嵌套子目录中的文件?
- Visual C# - 读者询问如何复制目录以及目录下所有的子目录与文件
- 删除一个目录及其子目录下的所有.svn文件
- 递归解压当前目录以及子目录下的所有压缩文件,并删除源文件
- 删除目录以及子目录以下所有目录和文件
- 写的一个读取指定目录下的所有文件和子目录的程序
- 获得某目录下的所有文件以及子目录文件
- 遍历某一个指定目录下的所有子目录和文件(递归)
- log4net 如何跨域或者跨进程日志记录在同一个日志文件中以及数据库中