我试图~/.bash_history在终端会话中搜索我最近的命令,但它们并不存在。我想这是因为我打开了多个终端会话。
有没有一种方法可以将当前终端会话的命令历史同步(即同步推送或同步写出)到 bash_history 文件中(不关闭会话并丢失该环境)?
(它与sync命令如何在某些系统上存储文件系统修改的想法非常相似。)
我想我可以设置 bash 来保留多个会话历史记录,但是当您在一台新机器上工作并且您不小心忘记按照您可能想要的方式设置 bash 时,推送当前历史记录缓冲区的能力仍然很有用.
如果进程尚未运行(在后台),我可以制作一个仅运行某个命令的 bash 命令行吗?
如果命令已经在运行,我如何检查*?
(所以我可以&&在它们之间添加下一个命令,这样下一个命令只有在第一个为真时才执行)。
*:测试,确定,发现,找出
我想将数据传入和传出到另一台机器上的 lpt(并行 IEEE 1284)端口,以远程使用设备。可以在通用的unix-y系统中完成吗?我有 ubuntu 12.04。:)
我在想这样的事情:
机器A,终端1:
nc -l 1234 > /dev/lpt0
Run Code Online (Sandbox Code Playgroud)
B机,1号航站楼:
nc 192.168.1.100 1234 < /dev/lpt0
Run Code Online (Sandbox Code Playgroud)
在第二个终端上:
机器A,2号航站楼:
nc 192.168.1.100 4321 < /dev/lpt0
Run Code Online (Sandbox Code Playgroud)
机器 B,2 号航站楼:
nc -l 4321 > /dev/lpt0
Run Code Online (Sandbox Code Playgroud)
我不知道这是否是一种合理的方式来做到这一点。
如何远程与并口通信?
如果which命令不可用,是否有另一种“标准”方法来找出可以找到命令可执行文件的位置?
如果没有其他“标准”方法可用,我目前面临的实际系统是带有ash Almquist shell的裸 Android 模拟器,如果这意味着什么的话。
阅读进程周围的括号是什么意思?我知道打印了可执行文件名。
Linux ps手册页:
有时进程参数将不可用;发生这种情况时, ps 将改为在括号中打印可执行文件名称。
但是ps -Awwo pid,comm,args我得到:
PID COMMAND COMMAND
1 init init [2]
Run Code Online (Sandbox Code Playgroud)
这是什么意思?“可执行名称”应该是init还是[2]?
我想可执行文件当然是init- 什么是[2]?为什么要打印?
(另外,如果它知道可执行文件名称,我真的不明白为什么它不能显示完整路径。)
我有一个制表文件。我想检查每一行是否有相同数量的标签。
第一步,我想打印每一行的标签数。
我试过了grep -o '\t' infile | wc -l,但我的实现grep说grep: invalid option -- o。还有其他方法吗?
很高兴:如果可能的话,由于个人喜好,我更喜欢使用 util(grep、cat 等)工具来做到这一点,最好不要 awk或 bash 脚本。
该问题unix.SE/3595询问如何列出包,我明确地安装。明确的意思是,我选择的包,不包括默认安装的任何东西,或由依赖项引入的。
是否有类似的命令来查找明确删除的软件包?
假设我想使用命令,例如。从项目中info2html,它在我的系统上不可用。一些发行版有时会为一些预期的缺失命令(即被认为是通用的)建议包,但不是所有命令(也不是所有发行版)。
如何确定我的发行版中是否有所需程序的软件包,如果有,我需要安装哪个软件包?有没有,这样做的“正确方法”是什么?
欢迎提供一些具有特定发行版(如 Debian)的示例。:) 这可能取决于包管理软件。有用的术语也是受欢迎的,所以我可以在给定的包生态系统中找到这个功能。
bash ×2
command-line ×2
apt ×1
command ×1
deb ×1
executable ×1
grep ×1
init ×1
networking ×1
process ×1
ps ×1
shell ×1
software-rec ×1
sysvinit ×1
trisquel ×1
utilities ×1
wc ×1
which ×1