我制作了一个bash文件,在一个分离的屏幕中启动另一个具有唯一名称的bash文件,我需要确保该内部bash文件在任何时间点上只运行一个实例.要做到这一点,我想在try 创建它之前,让父bash文件判断该名称的屏幕是否存在.有没有办法做到这一点?

推荐答案

您可以将screen -list的输出grep为正在判断的会话的名称:

if ! screen -list | grep -q "myscreen"; then
    # run bash script
fi

Linux相关问答推荐

为什么我的Linuxshell 程序有时找不到它刚刚创建的文件?

使用 grep 时如何跳过第一行和最后一行?

c++进程状态中的+是什么意思

Rust unix 进程

使用 bash 在包含模式的 java 文件中查找行,然后替换该行的另一部分

在没有root访问权限的情况下安装zsh?

安装 mod_ssl 亚马逊 Linux

适用于 Linux 和 Mac 的 HTTP 调试代理

低功耗蓝牙:在 linux 中监听通知/指示

使用inotify的正确方法是什么?

如何使用 Ansible 等待服务器重启?

`是什么意思! -d` 在这个 Bash 命令中?

docker compose:加载共享库时出错:libz.so.1:无法从共享对象映射段:不允许操作

使用 C++ 代码在 Linux 中清除终端

os.walk 没有隐藏文件夹

如何自动化 HTML 到 PDF 的转换?

rename() 是原子的吗?

bash / Makefile中双美元符号的含义是什么?

`os.symlink` 与 `ln -s`

如何处理以连字符 (-) 字符开头的文件名?