我想写一个脚本:

  • 首先,创建一个tmux会话
  • 其次,在tmux会话中运行名为"run.rb"的ruby脚本

在伪代码中,我想做的是:

tmux new -s my_session
ruby run.rb     # NOTE: I want this to run inside the my_session tmux session.
tmux detach

我该怎么做?(我读的帖子越多,就越让人困惑.)

推荐答案

#!/bin/bash
tmux new-session -d -s my_session 'ruby run.rb'
  1. 创建一个名为my_script.sh的文件,并提供上面的内容.

  2. 通过运行以下命令使文件可执行:

    chmod 755 my_script.sh

  3. 然后运行shell脚本:

    ./my_script.sh

使shell脚本可执行

执行chmod 755 filename命令时,允许所有人读取和执行文件,文件所有者也可以写入文件.对于Perl和其他应该通过Web服务器运行的脚本,您可能需要这样做.如果你将755应用于一个目录,这意味着每个人都可以访问它并获取其文件列表.

这些权限通常被翻译成rwxr-xr-x的文本表示.

您也可以在文件上使用chmod +x file_name,使其可执行.

Ruby相关问答推荐

ASDF 上缺少 Ruby 版本

从 ruby​​ 脚本运行另一个 ruby​​ 脚本

你如何称呼 Ruby 中的 &: 运算符?

独立于 Rails 使用 HAML 文件中的布局

bundler 可以告诉我 Gemfile 中的哪些 gem 有更新的版本

Ruby 中有内置的二进制搜索吗?

如何拯救 Ruby 中的 eval?

如何使用 if..else 块的结果分配变量?

如何使用 yardoc 列出未记录的模块/类/常量/方法?

在 Ruby 中创建数字、字符串、数组或哈希的 md5 哈希

Rails - RSpec - let和let!之间的区别

Ruby 是否有任何数字格式化类?

Vagrant - 如何拥有特定于主机平台的配置步骤

如何引用全局变量和类变量?

需要必要的库和/或头文件时如何安装 ruby​​-debug

Ruby 中方法名称的限制是什么?

Sinatra 登录?

使用 RSpec 测试哈希内容

Ruby on Rails switch

Eclipse 的首选 Ruby 插件?