小编Has*_*ard的帖子

PS1='$(pwd)' 为什么这有效,为什么这与 PS1=$(pwd) 不同

为什么当我输入此命令时,提示会更改为我的目录?

PS1='$(pwd)'
Run Code Online (Sandbox Code Playgroud)

我使用的是单引号,这意味着没有插值,也就是echo '$(pwd)'——?$(pwd)

此外,假设我们澄清了为什么这会起作用……为什么它的功能与PS1=$(pwd)? (根本没有引号)

不同的是,我的意思是,如果我使用引号,那么当我浏览终端时,提示将不断更改为我的当前目录。但是如果我不使用引号,那么提示将始终保持我第一次输入命令时所在的目录PS1=$(pwd)

为什么?

bash prompt zsh pwd

21
推荐指数
3
解决办法
9118
查看次数

你如何在 whois 命令中使用代理?

我尝试导出到 http_proxy 和 https_proxy 中,但这似乎不起作用。

我猜在从命令行查询 whois 信息时,还有另一种使用代理的方法吗?

proxy whois

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

并行化 sed 给出不同的输出

然而,尝试并行化 sed 操作,当并行版本工作时,它会返回错误的输出。

我想并行化的 sed 操作(有效)

sed 's/\s.*$// ; s/\(.*\)/\L\1/' < oldfile.txt > newfile.txt
Run Code Online (Sandbox Code Playgroud)

我的上述 sed 操作的并行版本(由于某种原因无法正常工作):

parallel -a oldfile.txt -k --block $BYTES --pipe-part "sed 's/\s.*$// ; s/\(.*\)/\L\1/'" > newfile.txt
Run Code Online (Sandbox Code Playgroud)

shell sed quoting gnu-parallel

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

有效地从文本文件中删除前几行

  • head/tail将需要迭代几乎整个文件(取决于您作为参数提供的行的位置)。然后将该结果复制到新文件并删除旧文件。

  • 我不确定是否sed会迭代整个文件,但您需要将该结果复制到一个新文件并删除旧文件。即使-i(就地)它也会在后台创建一个临时文件,所以同样的事情也适用。

为什么不将指向文件第一行的指针移动到我们想要的行呢?

我们怎么能做这样的事情?我必须在 C 中做吗?还有其他方法吗?

那有意义吗 ??我想错了吗?如果是,为什么?

editors sed awk files

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

标签 统计

sed ×2

awk ×1

bash ×1

editors ×1

files ×1

gnu-parallel ×1

prompt ×1

proxy ×1

pwd ×1

quoting ×1

shell ×1

whois ×1

zsh ×1