相关疑难解决方法(0)

为什么不使用“哪个”?那用什么?

当寻找的路径,可执行文件或检查,如果你在Unix shell中输入命令的名称会发生什么,有不同的公用事业过多(whichtypecommandwhencewherewhereiswhatishash,等)。

我们经常听说which应该避免。为什么?我们应该用什么来代替?

shell history which portability

422
推荐指数
4
解决办法
7万
查看次数

将上一个命令的输出作为参数传递给下一个

我有一个将数据输出到 stdout ( command1 -p=aaa -v=bbb -i=4)的命令。输出行可以具有以下值:

rate (10%) - name: value - 10Kbps
Run Code Online (Sandbox Code Playgroud)

我想 grep 该输出以存储该“速率”(我想管道在这里会很有用)。最后,我希望该速率是第二个命令的参数值(假设command2 -t=${rate}

我这边看起来很棘手;我想更好地了解如何使用管道、grep、sed 等。

我已经尝试了很多这样的组合,但我对这些感到困惑:

$ command1 -p=aaa -v=bbb -i=4 | grep "rate" 2>&1 command2 -t="rate was "${rate}
Run Code Online (Sandbox Code Playgroud)

command-line pipe command-substitution output arguments

179
推荐指数
5
解决办法
47万
查看次数

如何将一个命令的输出作为命令行参数传递给另一个命令?

所以我有一个脚本,当我给它两个地址时,它将搜索两个 HTML 链接:

echo "http://maps.google.be/maps?saddr\=$1\&daddr\=$2" | sed 's/ /%/g'
Run Code Online (Sandbox Code Playgroud)

我想将它发送到wget然后将输出保存在一个名为temp.html. 我试过这个,但它不起作用。有人可以解释原因和/或给我一个解决方案吗?

#!/bin/bash
url = echo "http://maps.google.be/maps?saddr\=$1\&daddr\=$2" |  sed 's/ /%/g'
wget $url
Run Code Online (Sandbox Code Playgroud)

command-line shell bash

78
推荐指数
5
解决办法
25万
查看次数

将文件内容重定向到命令“echo”

我有一个名为my_file.txt的文件,其内容只是 string Hello。如何将其内容重定向到命令echo

我知道我有命令less, cat, more... 但我需要用echo.

我试过这个:

$ cat my_file.txt | echo
Run Code Online (Sandbox Code Playgroud)

还有这个:

$ echo < my_file.txt
Run Code Online (Sandbox Code Playgroud)

但在这两种情况下,它在标准输出中只出现一个空白,而不是 my_file.txt 的内容。

我怎么能那样做?

shell io-redirection echo

66
推荐指数
3
解决办法
28万
查看次数