小编use*_*233的帖子

如何检查一个文件是否属于其他文件?

我需要通过bash脚本检查一个文件是否在另一个文件中.对于给定的多行模式和输入文件.

返回值:

我想接收状态(在grep命令中如何)0如果找到任何匹配,如果没有找到匹配则为1.

图案:

  • 多,
  • 线条的顺序很重要(被视为一个单独的线条),
  • 包括数字,字母,?,&,*,#等字符,

说明

只有以下示例才能找到匹配项:

pattern     file1 file2 file3 file4
222         111   111   222   222
333         222   222   333   333
            333   333         444
            444
Run Code Online (Sandbox Code Playgroud)

以下不应该:

pattern     file1 file2 file3 file4 file5 file6 file7
222         111   111   333   *222  111   111   222
333         *222  222   222   *333  222   222   
            333   333*        444   111         333
            444                     333   333 
Run Code Online (Sandbox Code Playgroud)

这是我的脚本:

#!/bin/bash

function writeToFile {
    if [ -w "$1" ] ; then
        echo "$2" >> "$1"
    else
        echo -e "$2" …
Run Code Online (Sandbox Code Playgroud)

linux bash command-line pcregrep

10
推荐指数
2
解决办法
1264
查看次数

如何从外部项目获取 CMake 中的 git 分支/标签名称?

是否可以在 cmake 配置步骤(在 ccmake/cmake-gui)中列出所有 git 分支或标签?

我想允许用户选择一个特定的分支/标签(在当前存储库上可用),它将在构建(制作)步骤中用于下载外部项目。

初始 CMakeLists.txt 文件:

cmake_minimum_required (VERSION 2.8)
project (project_name)

find_package (Git)
if (GIT_FOUND)
      message("git found: ${GIT_EXECUTABLE} in version     ${GIT_VERSION_STRING}")
endif (GIT_FOUND)

set (DEFAULT_TAG "tag_default")
# set (TAGS ...) getting the names of all tags from repository

set (REPO_TAG ${DEFAULT_TAG} CACHE STRING "Select a repo tag")
set_property (CACHE REPO_TAG PROPERTY STRINGS ${TAGS})

include(ExternalProject)
ExternalProject_Add (
    numpy
    GIT_REPOSITORY git@bitbucket.org:pypy/numpy.git
    GIT_TAG ${REPO_TAG}
)
Run Code Online (Sandbox Code Playgroud)

git cmake

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

标签 统计

bash ×1

cmake ×1

command-line ×1

git ×1

linux ×1

pcregrep ×1