¿Cómo ejecuto un comando de terminal para diferentes valores?

0

¿Cómo tengo que etiquetar i para que el comando do se repita para todos los valores de i.

Por ejemplo,

if i =2:
cd /Users/xxx/zTree; wine explorer /desktop=1,640x480 zleaf.exe /language english /name lab1
cd /Users/xxx/zTree; wine explorer /desktop=2,640x480 zleaf.exe /language english /name lab2

Pero de alguna manera esto no funciona, ¿dónde está mi error?

display dialog "how many leafs?" default answer ""

set i to the text returned of result as integer
repeat while i > 0
  tell application "Terminal"
    do script "cd /Users/xxx/zTree; wine explorer /desktop=$i,640x480 zleaf.exe /language english /name lab$i"
    set i to i - 1
    activate
  end tell
end repeat
    
pregunta Irah 18.02.2016 - 10:59

2 respuestas

1

medbot tiene razón en que realmente debes hacer esto como un script de shell, pero como es difícil hacer cuadros de diálogo como en Applescript, aquí está la respuesta:

display dialog "how many leafs?" default answer ""

set i to the text returned of result as integer
repeat while i > 0
    tell application "Terminal"
        do script "cd /Users/xxx/zTree; wine explorer /desktop=" & i & ",640x480 zleaf.exe /language english /name lab" & i
    end tell
set i to i - 1
end repeat
    
respondido por el Todd Dabney 21.02.2016 - 08:18
-1

Si pretende automatizar los comandos de Terminal, logrará esto escribiendo un archivo de texto sin formato denominado shell script. El archivo de script de shell contendrá los comandos que desea ejecutar, cada uno separado por un línea. El archivo de script de shell también puede contener sentencias programáticas con variables y operadores. Cuando desee ejecutar el script de shell, simplemente debe emitir el nombre del archivo del script de shell en el símbolo del sistema como lo haría para un comando incorporado.

Lo que no está exactamente claro en su pregunta es: ¿dónde pretende que la variable 'i' obtenga su valor de inicio, y qué se debe hacer de manera diferente cada vez que se incrementa y evalúa 'i'?

Además, 'cd' no es un script, es un comando.

    
respondido por el medbot 18.02.2016 - 11:21

Lea otras preguntas en las etiquetas