标签: command-line-tool

从C程序制作命令行工具

如果我想使用makefile创建一个命令行工具,比如这个C程序:

# include<stdio.h>

int main()
{
    printf("Hello World!");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我以前没有使用makefile或linux shell命令的经验.刚开始.谁能告诉我怎么去呢?

c makefile command-line-tool

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

如何在命令行中使用perl样式的正则表达式匹配多行模式?

我经常使用正则表达式来转换文本.

要从命令行转换巨型文本文件,perl让我这样做:

perl -pe < in.txt > out.txt
Run Code Online (Sandbox Code Playgroud)

但这本质上是逐行的.偶尔,我想匹配多线的东西.

我怎么能在命令行中这样做?

regex perl multiline command-line-tool

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

如何在mac中的多个文件名中追加相同的字符串?

我只需要将字符串"eng"附加到同一目录中的许多文件名,而不更改其在MAC TERMINAL中的扩展名.我搜索了很长时间,我发现mv命令一次重命名文件.但我不知道如何实现我的方案.任何ony可以指导我吗?

谢谢

unix macos command-line-tool

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

Ruby/Mavericks 10.9/Xcode 5

我试图在Ruby 2.0.0上安装Nokogiri gem,同时使用Mavericks 10.9和Xcode 5,但我一直收到错误

You have to install development tools first
Run Code Online (Sandbox Code Playgroud)

我从Apple的开发者网站下载并安装了Mavericks的命令行工具,所以我不确定是什么问题.

我已经尝试过这个问题的解决方案但是当输入xcode-select --install到终端时我只是回到帮助菜单--install似乎不是一个有效的参数

Usage: xcode-select -print-path
   or: xcode-select -switch <xcode_folder_path>
   or: xcode-select -version
Arguments:
   -print-path                     Prints the path of the current Xcode folder
   -switch <xcode_folder_path>     Sets the path for the current Xcode folder
   -version                        Prints xcode-select version information
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails command-line-tool xcode5 osx-mavericks

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

NSTimer在命令行工具中

我开始了解并发的NS/Objective-C模型.假设我有一个命令行工具,它可以执行以下操作:

#include "myLibrary.h"

void callback(void* parameter){
  cout<<"callback called.\n";
  //some logic...
}

int main(int argc, char* argv[]){
  myLibraryInit(callback);
  std::string s;
  while(true){
    cin>>s;
    myLibrarysResponseTo(s);
  }
}
Run Code Online (Sandbox Code Playgroud)

在我的图书馆,我希望能有两个回复.一个启动重复计时器,一个停止它.计时器应该通过myLibraryInit调用提供给库的回调.

我之前在iPhone/iPad应用程序中使用过NSTimers,我认为问题源于不同的范例命令行工具.主线程进入main,直到程序完成后才会完成.这意味着它不能自由运行主运行循环,这是计时器的运行.我认为.那么如何在这种情况下使NSTimer工作呢?

另一件事是Apple NSTimer文档说我需要在安装它的同一个线程上使NSTimer无效.我不知道如何在安装计时器时找出我所处的线程,然后跟踪它(并确保它保持活动状态),直到我想要使计时器无效.我不确定我是否只是错过了线程和调度队列,运行循环或其他东西之间的明显映射.我正在使用核心蓝牙,我初始化一个中央管理器,如下所示:

_centralManager=[[CBCentralManager alloc]
  initWithDelegate: self
  queue: dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
];
Run Code Online (Sandbox Code Playgroud)

所以可以从这里触发回调.如果回调包含一些逻辑来调用停止计时器的库函数,我无法保证哪个线程来自无效.那么如何才能使计时器无效?

我发现了这个问题,但是它不允许主程序与计时器所在的运行循环同时发生.

我希望我给出足够的背景.提前感谢您的回复.

concurrency objective-c command-line-tool nstimer core-bluetooth

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

Golang标志库:无法覆盖打印出命令行用法的Usage函数

我正在使用一个简单的命令行工具,我发现默认的Usage消息有点缺乏.我想定义自己的,我认为我正在做正确的我指的是这个例子.

我注释掉了我编写的大部分代码,因此包含main函数的文件现在看起来像这样:

package main

import (
    "flag"
    "fmt"
    "os"
)

func main() {
    // set the custom Usage function
    setupFlags(flag.CommandLine)
    // define flags...
    // then parse flags
    flag.Parse()
    // custom code that uses flag values...
}

func setupFlags(f *flag.FlagSet) {
    f.Usage = func() {
        fmt.Println("foo bar")
    }
}
Run Code Online (Sandbox Code Playgroud)

看起来这应该有效,但事实并非如此.运行时,<binary> -h我得到默认用法消息,而不是我foo bar在自定义函数中定义的自定义消息.我在OSX上使用Go 1.3.3版.我发现了这个提交,但它适用于Go 1.4rc2.

我究竟做错了什么?

flags command-line-tool go

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

无效的`Podfile`文件:未终止的字符串符合文件末尾

我正在尝试安装pod文件,但收到以下错误:

Faizs-MacBook-Pro:newj faizfareed$  pod install

[!] Invalid `Podfile` file: unterminated string meets end of file.

 #  from /Users/faizfareed/Desktop/NewJson/NewJ/Podfile:4
 #  -------------------------------------------
 #  
 >  pod 'AFNetworking', '~> 3.0
 #  -------------------------------------------
Run Code Online (Sandbox Code Playgroud)

这里是命令行工具的详细图片 -

错误

任何人都可以帮我解决这个问题吗?

command-line-tool cocoapods xcode6 xcode7

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

在 Swift 中终止 macOS 命令行工具的子进程

我正在 swift 中编写一个 macOS 命令行工具,它执行 shell 命令:

let process = Process()
process.launchPath = "/bin/sleep"
process.arguments = ["100"]
process.launch()
process.waitUntilExit()
Run Code Online (Sandbox Code Playgroud)

但是,如果中断 ( CTRL-C) 或终止信号被发送到我的程序,这些 shell 命令不会被终止,而是继续执行。

如果我的程序意外终止,有没有办法自动终止它们?

shell command-line-interface command-line-tool swift

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

如何使用 .net 5.0 通过命令行在现有项目中创建新的 .cs 文件

我正在使用 .net core 通过命令行创建和运行一些非常简单的 C# 代码。我使用dotnet new console. 它以我所在目录的名称(classes)创建一个.csproj文件。所以我有一个classes文件夹,其中包含一个classes.csproj文件、一个Program.cs文件和一些其他文件夹。

为了创建一些类,我需要一些其他的.cs文件,但我不知道如何去做。我已经File:New根据https://docs.microsoft.com/en-us/dotnet/csharp/tutorials/intro-to-csharp/introduction-to-classes尝试了该命令,但我必须使用错误的语法,因为它说:

文件名、目录名或卷标语法不正确。

由于我对命令行和编码非常陌生(显然),我已经在谷歌上搜索了一些 cmd 语法,但仍然找不到任何东西来让它工作。

我知道它可以在 Visual Studio 中轻松完成,但我想知道是否有办法使用 cmd 来完成它。

c# cmd command-line-tool .net-core

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

从终端以 Rosetta 模式运行 xcode 项目?

我有 M1 机器,我有一个项目,我只需要 Rosetta 来运行它,而不是从 Xcode 获取信息菜单打开/关闭它在此输入图像描述

我尝试运行命令: arch -x86_64 open ~<PROJECTNAME>.xcodeproj

但项目每次都构建失败。

有人可以帮助我使用命令在 Rosetta 模式下从命令行构建项目吗?

terminal xcode command-line-tool rosetta

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