小编Ale*_*lex的帖子

如何在bash中结合'tail -f'和'grep'?

当我做

tail -f file.log
Run Code Online (Sandbox Code Playgroud)

在bash中,文件的每个更改都显示在屏幕上.但不是列出文件的每一行,而是只想显示包含特殊字符串的行special string.所以我试过了

grep 'special string' file.log | tail -f 
Run Code Online (Sandbox Code Playgroud)

但是此命令会立即返回到bash,而不会显示文件中的任何未来更改.

怎么做正确?

linux bash

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

如何解决"致命:远程起源已存在".在'git remote add'?

我想在我的USB记忆棒上创建一个git存储库.在棍子上,我使用该命令创建了一个裸git存储库

git init --bare MyRepo
Run Code Online (Sandbox Code Playgroud)

在笔记本电脑上的存储库(Ubuntu 14.04)中,我发出了以下命令

git init
git add .
git commit -m 'first commit'
git remote add origin /media/alexander/Stick/MyRepo
Run Code Online (Sandbox Code Playgroud)

并得到了错误

fatal: remote origin already exists.
Run Code Online (Sandbox Code Playgroud)

我刚刚在棒上成功创建了一个git repo而没有任何错误(当然使用不同的目录).现在我收到了这个错误.'git status'的输出是

On branch master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working directory clean
Run Code Online (Sandbox Code Playgroud)

出了什么问题?

git

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

如何将文件复制到 docker 映像?

我正在拉一个 docker 镜像并在 Linux 环境中运行这个 docker 镜像,比如

docker pull ${IMAGE}
# I need to copy the file BEFORE I run the thing
docker run ... ${IMAGE}
Run Code Online (Sandbox Code Playgroud)

但是如何将文件从主机复制到我即将运行的 docker 映像,以便在它运行时可以使用来自主机的这个文件?

我看了看,docker cp但这似乎使用了我没有的 docker容器ID。我也不想创建新图像。我需要 docker 容器可以访问主机系统上的一个文件。

或者反过来也可以:如何从 docker 容器内访问主机系统上的文件?

docker

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

如何使用python向谷歌环聊发送消息?

我正在尝试为谷歌环聊创建一个简单的“聊天机器人”,在聊天中发送常规消息。我找到了这个文档,但我发现它非常复杂。

它包含一个“完整示例”,但我不确定如何为现有的谷歌环聊找到“空间”ID。这是无处解释的。如何找到现有谷歌聊天的“空间”ID?

此外:是否有一个简单的(!!!) 文档如何简单地向现有聊天发布消息?

google-api hangouts-chat

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

如何修复在 MacOS 中从终端打开 sublime 的问题?

我希望能够从命令行打开 MacOS (14.10.6) 中的 sublime 文本编辑器。我找到了一些如何做到这一点的说明(此处此处),但当然它对我不起作用。

我确实在以下位置创建了指向应用程序的符号链接/usr/local/bin

sublime -> /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl
Run Code Online (Sandbox Code Playgroud)

该位置的文件/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl 确实存在。此外,该文件夹/usr/local/bin包含的实际定义中PATH

但是,当我在终端的命令行中输入该命令时,找不到该命令

~$ sublime
-bash: sublime: command not found
Run Code Online (Sandbox Code Playgroud)

证明:

$ls -al /usr/local/bin | grep sublime
lrwxr-xr-x    1 root    admin        63 Jan 15 07:44 sublime -> /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl

$ echo $PATH
/usr/local/opt/python@3.8/bin:/usr/local/opt/python@3.8/bin:/Users/adietz/miniconda3/bin:/usr/local/bin:/Users/adietz/.pyenv/shims:/Users/adietz/opt/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/opt/puppetlabs/bin:/opt/X11/bin
Run Code Online (Sandbox Code Playgroud)

有什么想法如何解决这个问题吗?

macos command-line sublimetext3

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

如何在C中选择字符串数组?

我想在C中定义不同的字符串数组,然后可以根据其他一些值进行选择,例如如下所示:

char foo[][10] = {"Snakes", "on", "a", "Plane"};
char bar[][10] = {"Fishes", "in", "a", "Lake"};
char *choice;
if (flag == 1) {
  choice = &foo;
} else if (flag == 2) {
  choice = &bar;
} 
printf("%s%s\n", choice[0] , choice[1]); 
Run Code Online (Sandbox Code Playgroud)

案例中的预期结果flag是1:

Snakeson

预期结果flag为2:

Fishesin

但上面的代码给出了一个segmentation fault错误,而我尝试了不同的定义char,即char*char**.怎么做对了?有没有关于这个问题的好教程,即关于指针,数组,foo上面的例子究竟是什么......

c arrays string pointers

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

如何在类中调用php中的变量函数?

我有以下示例代码

<?php

class Test {
    function foo() {
        print "foo\n";
    }

    function bar() {
        $func = 'foo';
        $func();
    }
}

$test = new Test();
$test->bar()
Run Code Online (Sandbox Code Playgroud)

哪个调用$test-bar(),内部调用一个名为的变量php函数foo.这个变量包含字符串foo,我希望像这里一样foo调用该函数.而不是获得预期的输出

foo
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:

PHP Fatal error:  Call to undefined function foo()  ...
Run Code Online (Sandbox Code Playgroud)

当使用字符串作为函数名时,如何正确执行此操作?字符串'func'可能表示实际代码中类范围内的几个不同函数.

根据文档,上面应该像我编码的那样工作,或多或少......

php function

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

如何有条件地提取bash字符串的一部分.

我有一个看起来像的bash字符串

TEST="tags/1.2.3-abc"
Run Code Online (Sandbox Code Playgroud)

我希望在斜杠后提取部分,即"1.2.3-abc",当且仅当字符串以短语"tags /"开头时.如果后者不是这种情况,我希望字符串不变.

例子:

Input: tags/1.2.3-abc  Output: 1.2.3-abc
Input: 1.2.3-abc       Output: 1.2.3-abc
Input: trunk           Output: trunk 
Run Code Online (Sandbox Code Playgroud)

bash

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

如何使用 python 日志记录到文件?

我想使用 pythonlogging工具将输出记录到不同的文件(每个模块都有自己的日志文件)。因此,我在每个 python 模块的开头添加类似以下内容,请参见示例

... other imports ...
import logging
logger = logging.getLogger('factory')
fh = logging.FileHandler('log/factory.log')
fh.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s %(levelname)s: %(funcName)s:%(lineno)d %(message)s')
fh.setFormatter(formatter)
logger.addHandler(fh)
... code ...
Run Code Online (Sandbox Code Playgroud)

然后用于logger.info("text")记录消息。但是,log/factory.log尽管正在创建名为的文件,但没有数据写入!该目录log存在并且我有权写入该目录。使用该logging设施basicConfig工作正常......

python logging

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

如何编译gtest cpp文件?

在 Ubuntu Linux 上,我一直按照此处gtest给出的说明进行安装,并将头文件和库分别手动复制到和。gtest/usr/include/usr/lib

然后我尝试编译以下代码 ( test1.cpp)

#include <gtest/gtest.h>
TEST(MathTest, TwoPlusTwoEqualsFour) {
    EXPECT_EQ(2 + 2, 4);
}

int main(int argc, char **argv) {
    ::testing::InitGoogleTest( &argc, argv );
    return RUN_ALL_TESTS();
}
Run Code Online (Sandbox Code Playgroud)

使用以下命令

g++ -lgtest -lgtest_main -lpthread test1.cpp 
Run Code Online (Sandbox Code Playgroud)

只是为了查看另一个无用的错误消息:

/usr/bin/ld: /tmp/ccQlmghI.o: undefined reference to symbol '_ZN7testing8internal9EqFailureEPKcS2_RKSsS4_b'
/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib/libgtest.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?或者是否有另一个单元测试框架可以以简单的方式使用,并带有一个工作示例?

同样的问题已被问到here,但没有答案。

c++ linux unit-testing

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