Como posso fazer com que esse arquivo .sh seja executado corretamente?

1

Estou tentando pegar um arquivo .bat e torná-lo um .sh

Este é o arquivo .bat de trabalho

@echo off
title runserver
"C:\Program Files\Java\jdk1.7.0_25\bin\java.exe" -Xmx815m -cp bin;lib/*; com.rs.Launcher true true false
pause

este é o meu arquivo .sh até agora:

#!/bin/sh
java -Xmx815m -cp bin;lib/*; com.rs.Launcher true true false
pause

Isso está errado? Eu estou longe? Eu realmente não sei o que estou fazendo quando se trata de arquivos .sh, então qualquer ajuda será apreciada! Muito obrigado!

    
por user230218 30.12.2013 / 21:06

2 respostas

2

O problema é que o comando bat usa o Separador de Caminho do Windows ( ; ) para especificar o caminho de classe. Nos sistemas UNIX, isso é ( : ), portanto, podemos alterar o script para:

#!/bin/sh
java -Xmx815m -cp bin:lib/*: com.rs.Launcher true true false
    
por Marcos Roriz Junior 30.12.2013 / 21:15
1

Para mantê-lo aberto, além de Marcos Roriz Junior 's answer , você pode fazer:

#!/bin/sh
java -Xmx815m -cp bin:lib/*: com.rs.Launcher true true false
read -p 'Press Enter to continue...' 

No entanto, pode não abrir em uma janela de terminal. Se você clicar duas vezes no arquivo e selecionar Executar no Terminal que abrirá um terminal, mas se você o estiver executando a partir da linha de comando ou com Executar ele não será.

Use isso para sempre abrir em um terminal:

#!/bin/bash
[[ ! -t 0 ]] && exec gnome-terminal -e "$0 \"$@\""
java -Xmx815m -cp bin:lib/*: com.rs.Launcher true true false
read -p 'Press Enter to continue...' 

NOTA: Você pode ter que cd para a pasta onde os arquivos estão antes do comando java ... .

    
por kiri 01.01.2014 / 01:33