我需要区分两个目录:
A: /path1/
B: /path2/
Run Code Online (Sandbox Code Playgroud)
我想实现的是:
我有一个巨大的数据源,我正在使用一些greps 进行过滤。
这基本上是我现在正在做的事情:
#!/bin/bash
param1='something'
param2='another'
param3='yep'
echo $(avro-read /log/huge_data | grep $param1 | grep "$param2-" | grep $param3 | wc -l) / $(avro-read /log/ap/huge_data | grep $param1 | grep -v "$param2-" | grep $param3 | wc -l) | bc -l
Run Code Online (Sandbox Code Playgroud)
请注意我是如何进行两次基本相同的过滤(第二次只有一个差异),对每个进行计数,然后除以最终结果。这绝对是一件很麻烦的事情,但我想尝试加快一点速度,并且只执行一次初始过滤而不使用临时文件。
我尝试使用 fifo,但我不确定是否有可能在一个脚本中读取两个进程,以及是否有第三个进程“等待”,直到两个进程都完成以计算最终结果。我也研究过 using tee,但又不确定如何同步生成的子进程。
编辑:自己使用https://superuser.com/a/561248/43649解决了这个问题,但将另一个建议标记为答案。
如何在 Linux Mint 13 中增加命令历史记录大小?
Linux Mint 13 中没有 ~./bash_profile
和改变
~/.profile
Run Code Online (Sandbox Code Playgroud)
包括类似的东西
HISTSIZE=4050
HISTFILESIZE=4050
Run Code Online (Sandbox Code Playgroud)
也没有增加历史记录大小。
请指教。
丹尼斯
我想在 CentOS 6 启动时运行一个 bash 脚本。我在/etc/init.d/目录中添加了脚本,但所有这些脚本都是由 root 运行的。我想为任何用户运行脚本。
假设我执行(在交互式 bash shell 中)一个循环,它按顺序生成一堆进程,如下所示。
for i in `seq 15 42`; do if [ -f F$i.flv.mp3 ]; then play F$i.flv.mp3; fi; done
Run Code Online (Sandbox Code Playgroud)
如果我用 杀死当前进程Control-C,它只会进入循环中的下一个进程,我必须分别杀死由循环迭代启动的进程。
在不杀死我的交互式 shell 的情况下,我可以停止循环生成或按顺序生成更多进程吗?
我一直试图通过编辑我的文件来让 Vim 重新映射CTRL+ S(或 ^S),但是它不起作用。:w.vimrc
这是我目前的~/.vimrc配置:
nmap <c-s> :w<CR>
imap <c-s> <Esc>:w<CR>
imap <c-s> <Esc><c-s>
Run Code Online (Sandbox Code Playgroud)
我读到CTRL+S可以运行一个冻结终端的命令,但是我似乎没有遇到过这种情况。
如果我按CTRL+ S,则什么也不会发生。如果我这样做了ESC并且:q我被告知我还没有保存更改。
:current告诉我user vimrc file: "$HOME/.vimrc"。
我尝试使用 telnet 连接到本地主机:
% telnet localhost 6311
Run Code Online (Sandbox Code Playgroud)
此连接成功,但是当我通过计算机的外部 IP 连接时,连接失败:
% telnet x.x.x.x 6311
Trying x.x.x.x...
Connected to x.x.x.x
Escape character is '^]'.
Connection closed by foreign host.
Run Code Online (Sandbox Code Playgroud)
可能有什么问题?
在我的 .screenrc 中,我有几行类似于以下内容:
screen -t qf1 bash
Run Code Online (Sandbox Code Playgroud)
所以对于那个窗口,我目前正在执行 bash。相反,我想执行以下别名“qf”,这是一个为某个 URL 执行 lynx 的 bash 别名。
但是,我收到以下错误:
"Cannot exec 'qf': No such file or directory"
Run Code Online (Sandbox Code Playgroud)
我知道它可能与路径有关,但提供:
screen -t qf1 lynx www.google.com
Run Code Online (Sandbox Code Playgroud)
也不行。我知道我错过了一些明显的东西。谢谢!
我看到使用zsh vared您可以即时编辑指定的环境变量。bash是否有等效的命令?
谢谢