Java 在启动时使用cmd运行sh文件-可以看到它

Java 在启动时使用cmd运行sh文件-可以看到它,java,linux,raspberry-pi,sh,startup,Java,Linux,Raspberry Pi,Sh,Startup,我正在尝试运行一个sh文件,该文件将在raspberry pi上启动时运行 这就是我到目前为止所做的: 创建start.sh文件 #/bin/bash java -jar /home/pi/Desktop/HelloWorld.jar 使其可执行 > chmod +x ./home/pi/Documents/start.sh 在桌面上创建HelloWorld.jar import java.util.*; import java.util.Scanner; public cla

我正在尝试运行一个sh文件,该文件将在raspberry pi上启动时运行 这就是我到目前为止所做的:

  • 创建start.sh文件

    #/bin/bash
    java -jar /home/pi/Desktop/HelloWorld.jar
    
  • 使其可执行

    > chmod +x ./home/pi/Documents/start.sh
    
  • 在桌面上创建HelloWorld.jar

    import java.util.*;
    import java.util.Scanner;
    
    
    public class HelloWorld {
    
        public static void main(String[] args) {
    
            System.out.println("Hello - the device is UP and running now :-)");
    
            Scanner scanner = new Scanner(System.in);
            String tmp = scanner.nextLine();
    
            System.exit(0);
        }
    
    }
    
  • 现在,当我在cmd中运行
    start.sh
    时,一切都正常 所以jar+sh文件没有问题

    但是现在呢? 我已尝试将命令放入
    rc.lcoal

    sudo '/home/pi/Documents/start.sh'
    
    exit 0
    
    没用

    尝试在
    crontab-e中输入

    @reboot sudo /home/pi/Documents/start.sh
    
    也没用

    我错过了什么

    我想要\需要看到cmd打开并等待我的响应


    谢谢,

    无需在
    rc.local
    中使用
    sudo
    rc.local
    中的所有内容都作为
    root
    执行


    可能
    rc.local
    根本没有运行。被systemd迷住的现代系统可能无法启动它。看见如果
    rc.local
    启动,您可以将命令
    logger-trc.local测试
    添加到
    rc.local
    中,并使用
    sudo grep rc.local/var/log/syslog
    进行检查。

    请向文件添加执行权限我是pi\linux的新手。那么请告诉我你要我运行哪个命令?谢谢,由启动进程运行的脚本不会在需要用户输入的交互式shell中运行。我认为您的程序不能提供交互式提示。chmod+x start.sh应该是dommm。。。。所以我可以知道我的java文件是否正在运行?或者如果我有什么问题?必须是查看代码的命令行的一种方式,no?rc.local正在工作,因为我在hava代码中向文件添加了输出-我可以看到它在每次启动时都添加了一行。。。。也许这就像@zapl说的,在启动时看不到cmd(而在windows中你可以…),也许你有另一个想法?