shell - 为什么我的用于创建拆分窗口 tmux 会话的 shell 脚本不起作用
问题描述
我在 macOS 上并使用 zsh。我创建了一个~/bin/
已添加到路径中的文件夹。我创建了一个~/bin/testscript
包含以下代码的 shell 脚本
#!/bin/sh
tmux new-session -s testsession
tmux split-window -v
并用于chmod -R 700 ~/bin
设置权限-rwx------
。
当通过在 shell 中键入它们连续执行 shell 脚本中的行时,我得到一个带有垂直拆分窗口的新 tmux 会话。这是预期的行为。但是,当我testscript
在 shell 中键入时,我只会得到一个新的 tmux 会话,但没有垂直分割的窗口。
我需要做些什么来更改脚本以获得具有拆分窗口的会话?我已经从这个线程复制了上面的代码,但它对我不起作用。
解决方案
当您手动运行这些命令时,您将在新会话中运行的 shell 中键入第二行。当您运行脚本时,第二行没有在该会话内执行。尝试:
tmux new-session -s testsession "$SHELL" \; split-window -v
或者
#!/bin/bash
tmux new-session -d -s testsession
tmux split-window -v -t testsession:0.0
tmux attach-session -t testsession
推荐阅读
- spring-boot - 如何使用单个实体或单个存储库设计两个不同的项目?
- c# - 由于 commandTimeout 不够健壮,如何使用 Dapper 在 C# 中对阻塞/缓慢的数据库操作获得可靠的超时?
- javascript - 如何删除地图 Immutable.js 中的嵌套元素
- python - 在 Datetime 索引上组合 DataFrame,如果索引相同,则将其他行中的值相加
- c# - 用ajax从数组中填充文本
- r - 有没有办法将特定数量的列转换为 R 中的行?
- python - 如何使用 python 和 selenium 在 Internet Explorer(IE) 模式下打开 Microsoft Edge?
- android - Jetpack 使用 Fragments 编写 NavHost
- drools - 无法将具有多个流规则的 KieSession 序列化为字节 []
- reactjs - 在 Emotion 中使用 ClassName 覆盖类