相关疑难解决方法(0)

在shell中,"2>&1"是什么意思?

在Unix shell中,如果我想要组合stderrstdout进入stdout流进行进一步操作,我可以在命令的末尾添加以下内容:

2>&1
Run Code Online (Sandbox Code Playgroud)

所以,如果我想head在输出上使用g++,我可以这样做:

g++ lots_of_errors 2>&1 | head
Run Code Online (Sandbox Code Playgroud)

所以我只能看到前几个错误.

我总是很难记住这一点,而且我不得不去查阅它,主要是因为我不完全理解这个特殊技巧的语法.

有人可以打破这个并按字符解释具体2>&1 意义吗?

unix bash shell redirect

2121
推荐指数
16
解决办法
103万
查看次数

回显但显示消息

我在bat文件中关闭了echo.

@echo off
Run Code Online (Sandbox Code Playgroud)

然后我做这样的事情

...
echo %INSTALL_PATH%
if exist %INSTALL_PATH%(
echo 222
...
)
Run Code Online (Sandbox Code Playgroud)

我得到:

该系统找不到指定的路径.

这两个回声之间的信息.

这条消息可能是什么原因以及为什么消息忽略了回声?

cmd batch-file echo

69
推荐指数
3
解决办法
32万
查看次数

如何强制`findstr`忽略`无法打开`返回

我正在尝试使用findstr在文件夹中搜索寻找一些字符串:

findstr /spin /c:"string" *
Run Code Online (Sandbox Code Playgroud)

但是它返回了很多Cannot open错误,这使我很难找到找到的确切匹配项。

使用Cmder命令时:

grep -r "string" .
Run Code Online (Sandbox Code Playgroud)

我收到Permission denied相同文件夹的错误。如果我使用命令:

grep -rs "string" .
Run Code Online (Sandbox Code Playgroud)

它给了我很好和干净的结果。是否有类似的标志findstrcmd命令组合来执行相同的操作?

已经有一些关于findstr Cannot open错误的帖子,解释了什么是错误的以及如何解决它,但我不在乎它为什么会发生。我只希望命令忽略这些Cannot open行并仅打印出完全匹配的行。

windows cmd findstr

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

标签 统计

cmd ×2

bash ×1

batch-file ×1

echo ×1

findstr ×1

redirect ×1

shell ×1

unix ×1

windows ×1