标签: command

如何创建进程树?

我有一些代码可以杀死进程及其子/孙。我想测试这段代码。

目前我正在做$ watch date > date.txt,它与孩子一起创建一个过程。

有没有办法创建一个-> 子-> 孙子树?什么命令可以做到这一点?

linux command-line process command

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

有时我的 zsh 会弄乱行尾

我有这个奇怪的问题,我找不到根源,也找不到解决方案。

“有时”我的 zsh 搞砸了,并以一种有趣的方式开始显示行尾:

截屏

正如你所看到的,换行符被忽略了,我%在行尾感到很有趣。

您知道什么可能导致这种情况以及如何解决吗?

注意:我正在运行 OS X,Iterm2 和 Tmux 中的 zsh。

command-line zsh command newlines

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

如何检查哪些二进制文件依赖于 /lib 中的某些文件?

我知道如果我ldd <name>对二进制文件执行命令,/bin或者/sbin我可以看到它使用了哪些库。我如何做相反的事情?即对文件执行命令/lib并查看哪些二进制文件正在使用它?

libraries binary command

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

为什么 (...) 在后台运行时不会产生新的子进程?

运行命令后

{ sleep 5; } &  
Run Code Online (Sandbox Code Playgroud)

输出ps是(输出1)

 PID TTY           TIME CMD
  972 ttys000    0:00.27 -bash
 2556 ttys000    0:00.00 -bash
 2557 ttys000    0:00.00 sleep 5   
Run Code Online (Sandbox Code Playgroud)

而对于

( sleep 5 ) &    
Run Code Online (Sandbox Code Playgroud)

ps是(输出 2)

PID TTY           TIME CMD
 972 ttys000    0:00.28 -bash
2566 ttys000    0:00.00 sleep 5  
Run Code Online (Sandbox Code Playgroud)

()导致子shell环境,我希望在这种情况下为“输出1”,因为它会导致子进程分叉,而我希望{ sleep 5; } &在当前shell中执行时为“输出2” 。这可能看起来是一个愚蠢的问题,但我真的不明白这种行为。
我在这里缺少什么?

bash command subshell

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

找不到 bash 命令

我想知道有人可以帮助我:

if [ -z $1 ]; then                                                                                                                                                                                                                                                             
  user=$(whoami)                                                                                                                                                                                                                                                         
else                                                                                                                                                                                                                                                                           
  if [ ! -d "/home/$1" ]; then                                                                                                                                                                                                                                           
    echo "Requested $1 user home directory doesn't exist."                                                                                                                                                                                                         
    exit 1                                                                                                                                                                                                                                                         
  fi                                                                                                                                                                                                                                                                     
  user=$1                                                                                                                                                                                                                                                                
fi 
Run Code Online (Sandbox Code Playgroud)

当我看到两个命令时,我正在研究一些 bash 命令:-z-d. 我知道他们做什么(首先检查空白变量,第二次检查存在目录)。我的问题是如何找到有关这些命令的描述(ig 手册页 -d/-z)。它们只能与 if-else 语句一起使用吗?

bash command

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

如何复制名称中包含数字从 20 到 32 的文件

我想将包含从 20 到 32 的数字的文件从 copyDest 复制到 pastDest。我做错了什么?

cp -r ~/copyDest/*2[0-9]|3[0-2]* ~/pasteDest
Run Code Online (Sandbox Code Playgroud)

谢谢。

shell bash wildcards command

5
推荐指数
4
解决办法
6149
查看次数

如何将命令输出视为文本

我需要将命令输出与字符串进行比较。这是场景:

pvs_var=$(pvs | grep "sdb1") 
Run Code Online (Sandbox Code Playgroud)

所以 pvs var 是:/dev/sdb1 vg_name lvm2 a-- 100.00g 0

if [[ $($pvs_var | awk '{ print $2 }') = vg_name ]]; then
    do something
fi
Run Code Online (Sandbox Code Playgroud)

问题是 if 语句的输出是

-bash: /dev/sdb1: Permission denied
Run Code Online (Sandbox Code Playgroud)

我不明白这种行为。谢谢

bash string command output

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

ls 命令中的双连字符 (--) 是什么意思

我正在寻找在 linux 中仅打印目录名称的命令。我遇到了这种新颖的语法,我们可以在没有任何单词的情况下将两个连字符相邻。

ls -ld -- */
Run Code Online (Sandbox Code Playgroud)

在这个命令和一般的 linux 命令中,这个双连字符 (--) 是什么意思?

linux shell command

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

如何生成*所有*可用命令和函数的列表?

在 Linux(我使用 CentOS 7)中,有一个内置功能可以查看所有可运行的命令。该命令通过在控制台中按两次 Tab 键然后出现提示来运行:

Display all 1130 possibilities? (y or n)
Run Code Online (Sandbox Code Playgroud)

按下y会向控制台输出大量命令。

有没有办法在文件中捕获这个输出?

或者这个列表是否已经存储在本地?如果是这样,我如何访问它?

linux bash autocomplete command

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

vifm:分别对每个选定的文件运行命令

我想for为 vifm 循环模拟。

当我没有选择任何我可以输入的文件时,我会:!echo %f看到echo以当前文件名作为参数的输出。

当我选择多个文件时,会:!echo %f产生echo所有选定文件名的输出,并以空格作为参数。

如果我想echo对每个选定的文件应用任何程序(例如)怎么办?所以

echo file1
echo file2
echo file3
...
Run Code Online (Sandbox Code Playgroud)

代替

echo file1 file2 file3
Run Code Online (Sandbox Code Playgroud)

我有哪些选择?

PS我想要像这样的bash代码的模拟:

echo file1
echo file2
echo file3
...
Run Code Online (Sandbox Code Playgroud)

command for vifm

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