标签: command-line

将输出写入$ file(允许它为stdout)

假设我有这个脚本:

logfile=$1
echo "This is just a debug message indicating the script is starting to run..."

# Do some work...

echo "Results: x, y and z." >> $logfile
Run Code Online (Sandbox Code Playgroud)

是否可以从命令行调用脚本,这$logfile实际上是stdout?


为什么?我想有一个脚本将其部分输出打印到stdout或者可选地打印到文件.

"但是,为什么不删除>> $logfile部件,只./script >> filename需要在写入文件时调用它?",您可能会问.

好吧,因为我只想对某些输出消息执行"可选重定向"操作.在上面的示例中,只应影响第二条消息.

unix bash shell command-line sh

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

超越比较 - 通过命令行:FilePath中的空格

我试图通过命令行超越比较.

我使用的命令是:

BCompare.exe @"My Config File.txt" "File 1.xml" "File 2.xml"
Run Code Online (Sandbox Code Playgroud)

但由于文件Names中的空格,这不起作用.

Beyond Compare显示"找不到文件"错误(因为它只查找空格前的fileName部分)

如果我比较文件名中没有任何空格的文件,它就可以了.

command-line beyondcompare

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

如何在Windows批处理文件中提取版本号?

我需要从字符串中提取Major,Minor和Revision数字并实现这一点我试图使用'.'在批处理文件中拆分字符串.字符作为分隔符.

例如:如果用户在命令提示符下输入1.0.2,我应该能够提取

  • 1 - 主要版本,
  • 0 - 次要版本和
  • 2 - 修订

我正在尝试使用FOR命令来实现这一点,但只是没有通过.任何人都可以帮助我解决部分

@ECHO OFF & SETLOCAL 
set /p "ReleaseVersion=Please specify the software release version : "

:nextVar
for /F "tokens=1* delims=." %%a in ("%ReleaseVersion%") do (
   set %%a
   set ReleaseVersion=%%b
)
if defined ReleaseVersion goto nextVar

@PAUSE
Run Code Online (Sandbox Code Playgroud)

windows command-line cmd batch-file

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

如何从目录中的所有文本文件获取总行数

我有一个包含数百个文本文件的目录,我需要一种方法来计算所有txt文件的总行数.我正在使用Windows,我认为通过命令提示符找到它很容易,但以下只返回文件数:

C:\> dir /b c:\temp | find /c /v “~~~”
Run Code Online (Sandbox Code Playgroud)

这只是一个例子,但当我希望它通过每个文件并计算没有~~~的总行数时,它返回没有"~~~"的文件数.任何有关总计数的建议都将不胜感激.

windows command-line text count

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

当作为python脚本的命令行参数给出时,正则表达式被剥离'\'

我正在编写需要在命令行上指定正则表达式的脚本.所以程序应该能够\d+在命令行中使用:

python3 my_script.py \d+
Run Code Online (Sandbox Code Playgroud)

假设my_script.py根据命令行中给出的正则表达式搜索某些文件.

但是当我这样做时,领先者\被剥夺了.所以印刷 sys.argv['my_script.py', 'd+'].

如何才能在命令行中指定正则表达式?请注意正则表达式不在引号中.它甚至可能吗?

(我使用getopt模块处理我的输入参数)

python regex command-line

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

尝试从命令行获取星号*作为main的输入

我正在尝试从命令行向我的main函数发送输入.然后输入发送到函数checkNum等.

int main(int argc, char *argv[])
{

    int x = checkNum(argv[1]);
    int y = checkNum(argv[3]);
    int o = checkOP(argv[2]);
    …
}
Run Code Online (Sandbox Code Playgroud)

它应该是一个计算器,例如在我写命令行时:

program.exe 4 + 2
Run Code Online (Sandbox Code Playgroud)

它会给我答案6(不包括此代码).

问题是当我想要繁殖时,我输入例如

program.exe 3 * 4
Run Code Online (Sandbox Code Playgroud)

它似乎创建了一个指针(或者某些东西,不太确定),而不是给我指向char'的char指针*.

问题是我可以得到输入' *'的行为方式与我输入'+'的方式相同吗?

编辑:"*"在命令行中写入工作.有没有办法我只需要打字*

代码在Windows上运行,这似乎是问题的一部分.

c windows command-line mingw

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

Python:没有读取命令行参数?

我试图在以下形式读取python中的命令行参数:

python myprogram.py字符串字符串字符串

我已经尝试使用sys.argv [1-3]来获取每个字符串,但是当我有一个字符串如$ unny-Day时,它不会处理整个字符串.我怎样才能完全处理这些字符串?

python command-line sys

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

C中的命令行参数,无法理解其行为

我有以下代码:

#include <stdio.h>
int main(int argc, char* argv[]){
    int a = argv[1]?atoi(argv[1]):10;
    int b = argv[2]?atoi(argv[2]):20;
    printf("a = %d, b = %d\n", a, b);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

如果我不提供任何命令行输入,则"a"和"b"中的值
应分别为10和20,但会发生的是"a"获取值为10而"b"为0.
我无法理解为什么这种情况正在发生,因为我
在两种情况下做的都是一样的.

谢谢.

c command-line

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

Zsh提示自定义

嗨,我知道您设置了提示变量以编辑提示,如下所示

export PROMPT="This is the date %d"
Run Code Online (Sandbox Code Playgroud)

如何在提示符加载后每次执行命令并打印结果。

command-line zsh

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

将大目录拆分为子目录

我有一个目录,大约有250万个文件,超过70 GB.

我想将其拆分为子目录,每个子目录中包含1000个文件.

这是我尝试过的命令:

i=0; for f in *; do d=dir_$(printf %03d $((i/1000+1))); mkdir -p $d; mv "$f" $d; let i++; done
Run Code Online (Sandbox Code Playgroud)

这个命令对我来说很小,但我可以让它在这个目录上运行几个小时,它似乎没有做任何事情.

我打算通过命令行以任何方式执行此操作:perl,python等.无论如何最快完成此操作...

python bash shell perl command-line

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

标签 统计

command-line ×10

python ×3

windows ×3

bash ×2

c ×2

shell ×2

batch-file ×1

beyondcompare ×1

cmd ×1

count ×1

mingw ×1

perl ×1

regex ×1

sh ×1

sys ×1

text ×1

unix ×1

zsh ×1