草庐IT

cp_struct

全部标签

cp 和 mv 中的 linux 通配符用法

我正在编写一个脚本来处理20个文件。它们都位于不同的目录中。我有部分文件名。在log目录下,File1_Date_time.err改为File1__Date_time_orig.errcd../脚本/sh文件.shFile1目录是/data/data1directory/Sample_File1/logs/File1_Data_time.errFile2目录是/data/data2directory/Sample_File2/logs/File2_Data_time.err.....我的脚本是这样的。(runrunrun.sh)#!/bin/bashINPUT=$1mv/data/*/

c++ - vector<struct> 上的段错误

我创建了一个结构来保存一些数据,然后声明了一个vector来保存该结构。但是当我执行push_back时,我会遇到该死的段错误,我不知道为什么!我的结构定义为:typedefstructGroup{intcodigo;stringname;intdeleted;intprinters;intsubpage;/*includedthiswhenitstartedsegfaulting*/Group(){name.reserve(MAX_PRODUCT_LONG_NAME);}~Group(){name.clear();}Group(constGroup&b){codigo=b.codig

linux - 为什么第二次 cp 命令更快

当我执行cpfolder1folder2-rf时,第一次需要大约10分钟。但是当我执行第二个命令cpfolder1folder3-rf时,大约需要1分钟。folder1包含大约100000个文件。为什么第二次有运行时间改进? 最佳答案 这是因为页面缓存。运行sync;echo3>/proc/sys/vm/drop_caches让它再次变慢。进一步阅读:http://jim.studt.net/depository/index.php/flushing-caches-for-benchmarking-in-linuxhttps://s

linux - cp:找不到命令

我正在尝试将一个文件复制到其他目录并在调用中断时收到错误消息。脚本:#!/bin/bashPATH=~/MkFile/exitfn(){trapSIGINT#ResoresignalhandlingforSIGINTecho;echo'Calledctrl+c'#Growlatuser,cp./BKP/temp.txt$PATH/backup.txtexit#thenexitscript.}trap"exitfn"INT#SetupSIGINTtraptocallfunction.iiread-p"What?"echo"Yousaid:$REPLY"#resetalltraps##tr

c++ - 错误 : ‘struct sigevent’ has no member named ‘sigev_notify_thread_id’

以下“玩具”代码表示我在使用POSIXtimers的较大代码库中遇到的问题.#include#include#include#includeusingnamespacestd;intmain(){structsigeventsevp;longthreadId=5;sevp.sigev_notify=SIGEV_THREAD_ID;sevp.sigev_notify_thread_id=threadId;return0;}当我尝试在Linux机器上使用g++编译它时,出现错误:error:‘structsigevent’hasnomembernamed‘sigev_notify_thre

linux - cp 的所有可能的退出代码

查看cp的手册页,我只发现当复制成功且没有错误时命令以0退出,并且在任何错误时以大于0的数字退出。但是我找不到关于映射到特定案例的特定退出代码的任何详细描述。哪里有这样的描述,甚至是标准化的,或者每个Unix/Linux发行版都有自己的针对不同场景的退出代码集? 最佳答案 coreutils-8.21中的cp是如何退出的:exit(ok?EXIT_SUCCESS:EXIT_FAILURE);除了0或1之外别无其他。 关于linux-cp的所有可能的退出代码,我们在StackOverflo

Linux 内核 : copy_from_user - struct with pointers

我已经实现了某种字符设备,我需要有关copy_from_user函数的帮助。我有一个结构:structmy_struct{inta;int*b;};我在用户空间对其进行初始化,并使用“写入”函数将指向my_struct的指针传递到我的字符设备。在内核的空间字符设备“写入”函数中,我将它从*char转换为这种结构。我使用kmalloc为结构分配了一些内存,并向其中执行了copy_from_user操作。对于简单的'inta'没问题,但它只复制b值的指针(地址),而不是b指向的值,所以我现在在内核空间中,我正在使用指向a的指针用户空间内存。这是不正确的吗?我不应该直接访问用户空间指针,我必

c - 如何查找 C 结构 (struct sockaddr_in) 的手册页?

我很难找到套接字中使用的结构的手册页。所以我目前正在从一个单独的在线教程中了解它们。但如果知道如何在手册页本身中查找这些结构,那就太好了。我使用的是Debian8.3Linux系统。例如,我在mangetaddrinfo中找到了关于structaddrinfo的信息。但我无法在任何手册页中找到有关structsockaddr_in的信息。哪个手册页包含有关此结构的详细信息?以及一般如何找到此类结构的手册页? 最佳答案 您可以通过键入man7ip然后手动搜索它或按/并键入sockaddr_in来找到该特定结构。如果您不知道要查看哪个部

c - 使用 struct epoll_event 处理内存

我正在使用epolllibrary用C语言开发服务器我有一个关于如何为structepoll_event处理内存的问题。我在一些在线示例中注意到,当进行epoll_ctl调用时,events参数在堆栈上分配,然后传递指针,如下所示:structepoll_eventev;ev.events=EPOLLIN;epoll_ctl(epfd,EPOLL_CTL_ADD,sockfd,&ev);现在我们都知道函数返回时ev会发生什么。我的问题是:epoll库是在内部复制这些值还是依赖于您传递给堆分配的结构?上面的例子会完全破坏我的react器实现吗?如果是这样,跟踪我的堆分配epoll_eve

linux - 在 Linux 中执行文件操作时如何排除文件夹,即 cp、mv、rm 和 chown 等

如何在执行文件操作时排除文件夹,即cp等。我目前会使用通配符*将文件操作应用于所有文件夹,但我需要排除一个文件夹。我实际上想使用的命令是chown来更改目录中所有文件的所有者,但我需要排除一个子目录。 最佳答案 如果您使用bash并通过shopt-sextglob启用extglob那么你可以使用!()排除给定的模式。 关于linux-在Linux中执行文件操作时如何排除文件夹,即cp、mv、rm和chown等,我们在StackOverflow上找到一个类似的问题: