我想将 bash 中的两个单独命令 <2,3> 的输出通过管道传输。这样做的最佳方法是什么?目前,我有以下脚本:
command source > output
command2 output &
command3 output &
Run Code Online (Sandbox Code Playgroud)
输出文件大约为 100G,一种次优的方式是分别通过管道传输到命令 2 和 3。我认为有可能做得更有效。
我们知道,通过命令set -o vi和将 Readline 模式更改为 vi 后set editing-mod vi,按 键v可以进入临时文件来编辑命令(这里有更多详细信息)。我想禁用该功能。
我试图v在 ~/.inputrc 中重新映射喜欢:
"v":
Run Code Online (Sandbox Code Playgroud)
但是字符 v不能输入,即使在插入模式下(vim也不能输入。=.=!)。
我应该怎么做?以及如何重新映射快捷键并且不影响针对 VI 编辑模式的输入模式?
我在我的 mac 上使用自制软件进行包管理。今天更新自制软件后,我看到了以前从未见过的东西;

终端里有一个小小的啤酒表情符号。这是怎么做到的!?这支持哪些类型的终端?我正在为我的终端使用 iTerm 2。
我试图通过.bashrc在我的主目录中插入以下行来设置我的 shell 提示:
export PS1="\[\e[01;36m\][\u]\[\e[0m\] \[\e[01;37m\]\W\[\e[0m\] $ "
Run Code Online (Sandbox Code Playgroud)
我保存了这个文件并重新打开 bash,但它没有改变。当我发出命令时echo $PS1,控制台显示
\h:\w$
Run Code Online (Sandbox Code Playgroud)
这是默认提示。我环顾四周.bashrc,PS1除了上面显示的我插入的行之外,没有看到在任何地方设置了环境变量。
这适用于我的本地机器,但我在远程服务器上的帐户不会坚持。如何使自定义提示生效?
谢谢!
是的,这与让 curl 输出 HTTP 状态代码有关?但不幸的是不一样。
在我想运行的脚本中:
curl -qSfsw %{http_code} URL
Run Code Online (Sandbox Code Playgroud)
其中该-f选项确保退出代码非零以表示错误。成功时,我想从获取的文件中获取(文本)输出,否则我想使用错误代码。
问题:
我怎样才能从实际输出中分离 HTTP 返回码?
伪代码:
fetch URL
if http-error then
print http-error-code
else
print http-body # <- but without the HTTP status code
endif
Run Code Online (Sandbox Code Playgroud) 我发现自己总是同时打开许多终端。当我更新我的.bashrc 时,我必须去每个终端并执行
. .bashrc
Run Code Online (Sandbox Code Playgroud)
使用新的.bashrc获取终端。
这是一种痛苦,也很耗时。我想知道是否有一种方法可以使用新的.bashrc文件获取所有打开的终端,而无需逐一访问或注销并重新开始?
有时在使用自定义内核时,在 bash 自动完成中按 Tab 键的速度非常快。它冻结了整个桌面。然后过一段时间回来。这是我在许多自定义内核中遇到的唯一怪癖。他们都有,偶尔。为什么?
我确实安装了很多 ubuntu 包,但这不仅适用于命令行上的二进制程序,而且甚至适用于作为参数的程序和文件的参数,在文件很少的目录中(例如ls a__,有 15 个文件)目录,将挂在“a”上 45 秒)。这也永远不会发生在包含 ubuntu 标准的内核中。它也不会在每次登录时发生。有时看起来,如果我有一段时间没有使用给定的自定义内核启动系统,该内核会这样做,就好像它必须在充分执行之前“预热”一样。比如,它要么需要重新启动系统,要么在首次登录后需要 15 分钟才能独处。
我相信这很容易,但我找不到。
我正在编写一个 bash 脚本,我想将一个已知用户添加到一个组中。组名由目录确定,该目录作为变量发送到该 bash 脚本。
所以:
DIR="whatever"
GROUP=DIR groupname
usermod -a -G $GROUP userx
Run Code Online (Sandbox Code Playgroud) 我对 grep 有奇怪的问题(2.12-2,debian 测试)。
在某些情况下,当我执行以下操作时:
grep -rni '."spacer">.' .grep 返回几行空行:

如果我添加--color=none所有行变得可见。
.bashrc 中的 grep 选项:
export GREP_COLORS='fn=01;34:ms=01;33:ln=33'
alias grep='grep --color=auto'
Run Code Online (Sandbox Code Playgroud) 当~/.inputrc不不存在,击中Ctrl+Left Arrow和Ctrl+Right Arrow上的击命令行移动一个字光标前进和后退,分别。
但是,如果~/.inputrc存在(无论它是否为空),这两个组合键会导致;5D并;5C打印光标所在的位置,而不是移动光标。
我该如何解决?