Articles of function区

Bash在后台运行一个函数

这里有一个相对简单的问题。 我需要在bash中的后台运行一个函数。 通常我会这样做: FUNCTION & 但事情比这更复杂一点。 我有以下一行文本数据库中的每个logging运行主要function。 我无法真正编辑这些代码,而没有大幅度改变整个项目的其余部分,但我仍然接受新的想法。 cat databases/$WAN | grep -v \# | while read LINE; do MAIN; done 我想在后台为每个logging产生一个新的terminal,做一个并行types的处理,使事情变得更快。 主要需要一分钟来处理每条logging。 但是这不起作用。 cat databases/$WAN | grep -v \# | while read LINE; do MAIN &; done 有什么build议么? *更新* 感谢所有的答复。 让我看看我能否回答一些这些问题。 gniourf_gniourf – 是的,我知道使用这样的猫是错误的。 这是早期的,关键的代码,所以我还没有更新它。 我现在读了大部分事情的while循环。 我将最终修复它。 你可能是正确的语法。 当我这样分手时,事情似乎现在起作用了: cat databases/$WAN | grep -v […]

朋友function>有效范围

我想知道什么是一个friend函数的有效范围。 在我的情况下,我想授予私人成员的访问权限。 但是如果在另一个程序中还有一个函数FF() ? h文件: #ifndef LIB_FRIEND_H #define LIB_FRIEND_H class Lib_Friend{ friend int FF(Lib_Friend *vFF); private: int TestFF(); int Test; public: Lib_Friend(); }; #endif // LIB_FRIEND_H C-文件: #include "lib_friend.h" int FF(Lib_Friend *vFF){ vFF->Test = 1; return vFF->Test; } Lib_Friend::Lib_Friend(){ } int Lib_Friend::TestFF(){ return FF(this); } PROG: #include <iostream> #include "lib_friend.h" int FF(Lib_Friend *vFF){ vFF->Test = […]

Bash | pipe道打击function

在试图pipe道Bash函数,我写这个: example () { if [ -z ${1+x} ]; then local S=${@:-$(</dev/stdin)}; else local S="$1"; fi #echo "$S" echo "$S" | tr ' ' '_' } echo 'Moizès Júnior' | example example 'Moizès Júnior' Moizès_Júnior Moizès_Júnior 但是,在另一个上下文中,我正在接收正确的输出,并附加了此错误消息:“分段错误(核心转储)”。 试图debugging它,我问,如果有什么问题,我正在编写函数内部的代码,以获得STDIN。 非常感谢。

更改用户ID以分配其他function

问题陈述:我的自定义程序以非root权限执行,其用户标识为: uid: 1000 euid: 0 ,其中fork()后,subprocessexecv()被调用来运行SSH客户端服务。 由于我是非root用户,而套接字绑定到设备Linux内核将执行所有的权限检查,导致子例程sock_setbindtodevice()同时检查CAP_NET_RAWfunction,如下所示。 解决scheme我一直在考虑在subprocess中先获得root权限,然后执行权限操作,比如设置所需的权限并退回到非root用户。 这里可能的问题可能是什么,需要下降到非root用户:执行ssh命令时,其生成的DSA/RSA密钥需要存储在$HOME/.ssh/known_hosts而不是root/.ssh/known_hosts 。 请find下面的代码片段, void global_exec_func (const char *proc_name, const char *proc_path, char **arg_list) { pid_t pid; int status, euid; struct __user_cap_header_struct cap_header_data; cap_user_header_t cap_header = &cap_header_data; struct __user_cap_data_struct cap_data_data; cap_user_data_t cap_data = &cap_data_data; pid = fork(); if (pid < 0) { printf("%% can't fork process %s", proc_name); […]

在Bashfunction里面的Cd

我在SO上的第一个问题,如果没有做正确的道歉, 互联网上有很多关于在脚本中使用cd的问题,但是我的问题是在我放入我的.bashrc的bash函数中使用cd。 它的任务是find一个文件并转到文件的工作目录。 在发现多个文件的情况下,我只是去第一个。 这里是: fcd() { cd $PWD if [ -z "$1" ]; then echo 'Specify a file name to find' else found_dir=$( find . -name $1 -type f -printf \"%h/\" -quit ) echo $found_dir if [ -z "$found_dir" ]; then echo "No file found. Directory was not changed" else cd $found_dir fi fi […]

如何使用PAMfunction模块将function授予特定用户和可执行文件?

我试图做一个程序,使用原始套接字以非root的方式正常运行,并具有Linuxfunction。 该计划如下: #include <netinet/ip.h> int main() { int sd = socket(PF_INET, SOCK_RAW, IPPROTO_TCP); if(sd < 0) { perror("socket() error"); return 1; } return 0; } 如果我编译它并以非root用户身份运行它,我得到一个错误,如预期的那样: [user@localhost ~]$ make socket cc socket.c -o socket [user@localhost ~]$ ./socket socket() error: Operation not permitted 如果我添加cap_net_rawfunction,作为一个有效和允许的function,它的工作原理。 [user@localhost ~]$ sudo setcap cap_net_raw+ep socket [sudo] password for user: [user@localhost ~]$ […]

gtk和qt的Ribbon界面

是否有可能在gtk或qt在windows7中实现function区界面? 如果是的话怎么做?

ksh函数返回括号中的值

在以下非常简单的ksh脚本示例中,我需要问一下func1的结果是否等于4, 这就是我在这个例子中所做的,但是这个脚本并没有像我预期的那样打印“function result = 4”。 为了打印“function结果= 4”,在[[…]]中需要更改什么? 备注 – func1必须在[[…..]] #!/bin/ksh func1() { return 4 } [[ ` func1 ` = ` echo $? ` ]] && print "function result = 4"

用ctrl c结束程序时调用一个函数

我在Linux环境下工作,我有一个C ++程序,我想要的是当我用CTRL + C取消程序我希望程序执行一个函数,closures一些文件并打印一些副作用,有没有如何做到这一点? 谢谢。

function与Linux和Java

我正在尝试用于java应用程序的linuxfunction…我不想为解释器(JVM)添加function,所以我试图编写简单的包装(带有打印到stdout的debugging信息): #include <stdio.h> #include <stdlib.h> #include <sys/capability.h> #include <unistd.h> int main(int argc, char *argv[]){ cap_t cap = cap_get_proc(); if (!cap) { perror("cap_get_proc"); exit(1); } printf("%s: running with caps %s\n", argv[0], cap_to_text(cap, NULL)); return execlp("/usr/bin/java", "-server", "-jar", "project.jar", (char *)NULL); } 这样,我可以认为这个能力是为这个可执行的: ./runner: running with caps = cap_net_bind_service+p 和getcap显示 runner = cap_net_bind_service+ip 我有能力被设置为可inheritance的,所以应该没有问题。 不过,java仍然不想绑定到特权端口:-( 我得到这个错误: sun/nio/ch/Net.java:-2:in […]