小编use*_*333的帖子

grep输出只在bash脚本中打印单行

如何从grep中获取结果以在bash脚本中自行打印?

在终端中使用grep时,输出会显示我希望它出现的方式.

例如:

$ whois x.x.85.72 | grep 'OrgName\|NetRange\|inetnum\|IPv4'
NetRange:       x.x.85.64 - x.x.85.95
NetRange:       x.x.0.0 - x.x.255.255
OrgName:        xxxxx Technologies Inc.
Run Code Online (Sandbox Code Playgroud)

在bash中使用相同的grep命令时,它会在一行上打印出来.

我的bash脚本的输出:

$ lookup xx.com
xx.com resolves to: x.x.85.72
NetRange: x.x.85.64 - x.x.85.95 NetRange: x.x.0.0 - x.x.255.255 OrgName:xxxxx Technologies Inc.
Run Code Online (Sandbox Code Playgroud)

我的bash脚本:

#! /bin/bash
VAR1="$1"

IP=`net lookup $VAR1`
echo $VAR1 resolves to: $IP
RANGE=`whois $IP | grep 'OrgName\|NetRange\|inetnum\|IPv4'`
echo $RANGE 
Run Code Online (Sandbox Code Playgroud)

除了解决方案,谁能告诉我为什么这样做?

谢谢你!

linux bash shell grep

3
推荐指数
1
解决办法
1万
查看次数

在 C 中硬编码或替换 char **argv

我知道这样做会被认为是愚蠢的,但我正在尝试对命令行参数进行硬编码,而不是仅出于测试目的修改一大堆代码。

现有主要功能如下:

int main(int argc, char **argv) {
    Run run(argc, argv);

    return run.exec();
}
Run Code Online (Sandbox Code Playgroud)

我想对参数进行硬编码...所以这意味着将一个新指针传递给一个指针(因为这就是 run 函数所采用的)或重写 argv ?

我试图传递的数据...

    char *config[] = {
         " --user=temp"
         " --name=Joe"
         " --id=20"
    };   
Run Code Online (Sandbox Code Playgroud)

最安全和最“正确”的低音方法是什么?我还希望数组大小是动态的,这样我就不必在调用函数时手动定义 argc 。

一般来说,我对指针和 C 都很陌生,所以欢迎任何帮助!

c arrays string pointers program-entry-point

2
推荐指数
1
解决办法
876
查看次数

如何将字符串分配给函数C++

所以使用一堆if语句,我认为有人可以用更好的方式帮助我.

这就是我想要做的.假设我有3个字符串,如果找到该字符串,我想为该字符串分配一个函数...

目前我正在做的一个基本的例子:

if(findStr(string1)) {
    function1(perams);
}
else if (findStr(string2)) {
    function2(perams);
}
else if (findStr(string3)) {
    function3(perams);
}
Run Code Online (Sandbox Code Playgroud)

我正在做更大规模的类似事情,10个不同的字符串,每个字符串对应它自己的功能.

我愿意接受可能涉及我的字符串结构的选项吗?

我想只做一个if语句,即使涉及一个循环.我不想要调用"function1","function2","function3"我希望它以某种方式与字符串相关联.

这可以干净利落吗?或者if语句是最干净的方法吗?

多谢你们

c++ string if-statement function

0
推荐指数
1
解决办法
130
查看次数

标签 统计

string ×2

arrays ×1

bash ×1

c ×1

c++ ×1

function ×1

grep ×1

if-statement ×1

linux ×1

pointers ×1

program-entry-point ×1

shell ×1