小编Mef*_*ico的帖子

如何在grep中抑制二进制文件匹配结果

在linux中使用grep时,结果总是包含很多"二进制文件XXX匹配",我不在乎.如何抑制这部分结果,或者如何在grep中排除二进制文件?

linux grep

185
推荐指数
2
解决办法
7万
查看次数

仅在首次使用变量时计算变量的最佳模式是什么?

这不是一个实际问题,但我正在寻找一种模式来改善以下逻辑:

void PrintToGameMasters()
{
    std::string message = GetComplicatedDebugMessage(); // This will create a big string with various info
    for (Player* player : GetAllPlayers())
       if (player->IsGameMaster())
           player->SendMessage(message);
}
Run Code Online (Sandbox Code Playgroud)

该代码有效,但我遇到的问题是,在大多数情况下,没有任何gamemasters参与者,因此消息编写将一事无成。

我想写一些只会在第一次使用该变量时就创建消息的东西,但是在这里我无法提出一个好的解决方案。

编辑:为了使这个问题更精确,我正在寻找一个不是特定于字符串的解决方案,它可能是一个没有函数来测试它是否已初始化的类型。如果我们可以将调用保持在GetComplicatedDebugMessage循环的顶部,这也是一个很大的奖励点,我认为一个涉及包装器的解决方案可以解决这个问题。

c++

51
推荐指数
7
解决办法
4939
查看次数

如何使用MinGW编译makefile?

我是新手,想知道如何使用C语言中的MinGW编译器编译makefile.am.我是否必须将所有文件保存在MinGW\bin中?因为现在我的文件在不同的目录中.

感谢帮助.

c compiler-construction mingw makefile

45
推荐指数
4
解决办法
15万
查看次数

Make:LDLIBS,已弃用?

在GNU Make文档中,变量LDLIBS和LOADLIBES未在相应的部分中记录.我已经读过这些变量仅出于兼容性目的而存在,并且它们是等价的(相同含义).但是,LDLIBS仍在广泛使用.

可以说LDLIBS是一个弃用的变量,还是使用它真的很安全?如果没有,为什么LDLIBS被文档忽略了?

makefile gnu-make

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

VS Code 可以使用外部程序打开文件吗?

有没有办法设置 VS Code,以便在嵌入式文件资源管理器中双击 .docx 文件会导致在 Microsoft Word 中打开该文件?

我已经习惯了 PyCharm,但已经迁移到 VS Code。我习惯于创建 Word 文档文件 (.docx),然后在左侧子窗口的文件资源管理器中双击它们以启动 Word 并查看文档的外观。这在 PyCharm 中有效,但在 VS Code 中,它尝试将文件作为二进制文件打开,并声称它没有编辑器。即使它确实有编辑器,我也希望它在我的第二台显示器中打开(或者至少能够将其移动到我的第二台显示器)。目前,我正在打开一个文件资源管理器窗口并双击那里的文件,这并不是最佳的。

visual-studio-code vscode-extensions

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

在github工作流程中运行超时命令

我有一个类似于下面代码的 GitHub 操作。我有一个文件本来打算永远运行,但在需要时会被用户中断。我尝试过使用timeout,但它不起作用,并且给出了一些奇怪的消息。

对此的一个小警告是,如果该过程超时,我希望这不会引发错误,以便操作继续并报告成功。但是,如果 python 脚本本身失败,我希望报告这一点,因为运行一段时间进行调试是在操作中运行它的重点。

name: Run file with interrupt then save results
on: 
  push:
    branches: 
      - master

jobs:
  build:
    strategy:
      matrix:
        python-version: [3.7]
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v2
      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v1
        with:
          python-version: ${{ matrix.python-version }}
      - name: Install dependencies for ex 06
        run: |
          python -m pip install --upgrade pip
          cd /home/runner/work/repo_name/repo_name
          pip install -r requirements.txt
      - name: Run file with timeout
        run: |
          cd …
Run Code Online (Sandbox Code Playgroud)

github-actions

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

为什么“xhost”被认为是危险的?

我一直在使用xhostfrom x11-xserver-utils,但查看包页面时显示:

“ - xhost,一个非常危险的程序,你永远不应该使用;”

我还没有为非入门者找到明确的答案:为什么是xhost危险的?

我一直在使用它,这样我就可以在 Linux 的 docker 容器中运行具有图形用户界面的程序。我应该担心吗?我通常这样做:

xhost +
xhost local:root

docker run -it -v/tmp/.X11-unix -e DISPLAY=unix$DISPLAY image_name
Run Code Online (Sandbox Code Playgroud)

有没有已知的安全替代方案?

x11 x11-forwarding docker

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

pyInstaller:导入错误

我在Windows中,使用pyInstaller打包python文件.但是发生了一些错误:

Traceback (most recent call last):
  File "<string>", line 2, in <module>
  File "D:\Useful Apps\pyinstaller-2.0\PyInstaller\loader\iu.py", line 386, in importHook
    mod = _self_doimport(nm, ctx, fqname)
  File "D:\Useful Apps\pyinstaller-2.0\PyInstaller\loader\iu.py", line 480, in doimport
    exec co in mod.__dict__
  File "D:\Useful Apps\pyinstaller-2.0\server\build\pyi.win32\server\out00-PYZ.pyz\SocketServer", line 132, in <module>
  File "D:\Useful Apps\pyinstaller-2.0\PyInstaller\loader\iu.py", line 386, in importHook
    mod = _self_doimport(nm, ctx, fqname)
  File "D:\Useful Apps\pyinstaller-2.0\PyInstaller\loader\iu.py", line 480, in doimport
    exec co in mod.__dict__
  File "D:\Useful Apps\pyinstaller-2.0\server\build\pyi.win32\server\out00-PYZ.pyz\socket", line 47, in <module>
  File "D:\Useful Apps\pyinstaller-2.0\PyInstaller\loader\iu.py", line 409, in importHook
    raise …
Run Code Online (Sandbox Code Playgroud)

python sockets windows exe pyinstaller

6
推荐指数
4
解决办法
2万
查看次数

在Python中实时更新可执行子流程控制台输出

我一直在阅读这个问题指出该问题提出的解决方案没有达到我要尝试的目的。这个想法类似于这个问题,但是我在这里给出一个更好的例子。

我需要在Python 3.7中构建一个GUI,以监视和控制用C编写的旧软件的执行。现在,我试图从Python调用一个简单的测试可执行文件,并将其打印在GUI上,但是现在在与python相同的控制台上打印就足够了。问题是可执行文件要花很长时间才能完全执行,但是同时打印控制台消息,我需要这些消息由GUI快速读取。

这是一个工作示例:

在Python 3.7中:

import sys
from threading import Thread
import time
import subprocess

class HandleTarget(Thread):
    def __init__(self):
        Thread.__init__(self)

    def run(self):
        subprocess.Popen(["hello.exe"], stdout=sys.stdout, bufsize=1)

class Printer(Thread):
    def __init__(self):
        Thread.__init__(self)

    def run(self):
        for i in range(1, 15):
            sys.stdout.write("Hi back ("+str(i)+")!\n")
            time.sleep(1.0)

thread_1 = HandleTarget()
thread_2 = Printer()

# Launching threads:
thread_1.start()
thread_2.start()
Run Code Online (Sandbox Code Playgroud)

现在,示例可执行文件(“ hello.exe”)可以在C中构建,如下所示:

#include <stdio.h>
#include <time.h>

int main() {
    struct timespec time;
    double tic = 0;
    double toc = 0;

    for( …
Run Code Online (Sandbox Code Playgroud)

executable console-application python-3.x

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

docker 中有关用户指定子网的错误消息

我正在尝试使用该标志为容器指定 IP --ip。但我收到以下消息:

Error response from daemon: user specified IP address is supported only when connecting to networks with user configured subnets.

这个消息是什么意思?如何让容器运行?

网络是使用以下命令创建的: docker network create my_network_name

容器的调用方式为: docker run -it --net my_network_name --ip 172.22.0.30 image_name

docker docker-network

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