java - 用 Java for OSX 写一个可执行的 .sh 文件

标签 java shell scripting executable sh

所以我正在尝试编写一个可执行的 .sh 文件,这就是我目前编写它的方式:

Writer output = null;

try {
  output = new BufferedWriter(new FileWriter(file2));
  output.write(shellScriptContent);
  output.close();
} catch (IOException ex) {
  Logger.getLogger(PunchGUI.class.getName()).log(Level.SEVERE, null, ex);
}

这样就可以很好地写入文件,但它不可执行。有没有办法在我写的时候改变可执行状态?

编辑:为了进一步说明,我试图让它默认执行,例如,如果您双击生成的文件,它会自动执行。

最佳答案

您可以调用File.setExecutable()为文件设置所有者的可执行位,这可能足以满足您的情况。或者您可以通过 Process 系统调用自己chmod

遗憾的是,直到 Java 7 才可以对文件权限进行全能的编程更改。它将成为新 IO 功能集的一部分,您可以阅读更多关于 here 的内容。 .

关于java - 用 Java for OSX 写一个可执行的 .sh 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/673685/

相关文章:

Android:android模拟器是否已经root

windows - 编写一个打印作业以指定的时间间隔运行(很棒的派对)

javascript - 为什么我的 javascript 会抛出函数未定义错误?

java - 可以在循环中多次调用 ServletRequest.getInputStream() 吗?

oracle - 配置 SQL*Plus 以仅返回数据

shell - 如何将 shell 通配符传递给反引号命令

linux - 砍掉Linux中的GREP命令

java - 在 Java 中第一次匹配之前使用正则表达式的子字符串

java - 获取延迟渲染光 channel 的世界位置

java - 如何使用 showDialog(id) 更新 AlertDialog 内容