Mensajes: 1,004
Temas: 356
Gracias Recibidas: 240 en 175 posts
Gracias Dadas: 161
Registro en: Jul 2020
25-02-2021, 01:34
(Última modificación: 25-02-2021, 01:36 por
Shell.)
(24-02-2021, 22:44)jguardon escribió: Eso plantea el problema de que si distribuyes tu aplicación, no vas a saber qué shell tienen los diferentes usuarios. Entonces tu aplicación podría fallar si especificas un shell que no exista en esa máquina.
Se me ocurre que mediante alguna variable de entorno se puede averiguar y actuar en consecuencia, escogiendo entre varias opciones en el código.
Shell de Gambas ejecuta uno por defecto: /bin/sh
Que es un enlace a "/bin/dash"
Eso esta diciendo que dash no soporta la instrucción de arriba. Ahora bien. Podemos averiguar como tu dices el shell que esta usando
el usuario, pero eso no quiere decir que la instrucción vaya a funcionar o no con el shell activo del usuario.
Podemos averiguar que "shells" tiene instalada la máquina con:
Eso devuelve en este equipo lo siguiente:
Cita:# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash
/usr/bin/tmux
Y si se encuentra el que queremos, supongo que podremos seleccionarlo.
¿ Qué opinas ?.
Fuente de la información:
Parte II - Shells disponibles en Linux
Saludos
"El buen perfume en frasco pequeño se vende"
Mensajes: 1,004
Temas: 356
Gracias Recibidas: 240 en 175 posts
Gracias Dadas: 161
Registro en: Jul 2020
25-02-2021, 13:31
(Última modificación: 25-02-2021, 14:25 por
Shell.)
Desisto a pegar un código nuevo si el editor se lo carga...
Pruebo otra vez. He activado en las preferencias del editor de Gambas que al formatear elimine los espacios vacíos.
Voy a pegar una vez el código.
GAMBAS
contenidoarchivo
= File.
Load(ruta
)
'Convertimos cada línea de contenidoarchivo a un array con split, delimtando con final de línea, un caracter de escape que no existe y eliminamos los espacios vacíos
'Solo nos interesa obtener los elemementos del segundo indice hasta el último indice del array. Usamos la orden Extract
ashelldisponibles
= Split(contenidoarchivo, gb.
NewLine,
"'",
True).
Extract(1,
-1) ashelladecuados = OrdenesConSalida(orden, ashelldisponibles)
'Asignamos cada uno de los disponibles
[i
] Shell adisponibles
[i
] & orden
To salida
Print "La orden" & orden
& "funcionará con " & adisponibles
[i] posibilidades.Add(adisponibles[i])
A tomar por saco el código con las cursivas..[/i][/i][/i][/i]
"El buen perfume en frasco pequeño se vende"
Mensajes: 1,004
Temas: 356
Gracias Recibidas: 240 en 175 posts
Gracias Dadas: 161
Registro en: Jul 2020
Probemos una cosa graciosa..
GAMBAS
contenidoarchivo
= File.
Load(ruta
)
'Convertimos cada línea de contenidoarchivo a un array con split, delimitando con final de línea, un caracter de escape que no existe y eliminamos los espacios vacíos
'Solo nos interesa obtener los elemementos del segundo indice hasta el último indice del array. Usamos la orden Extract
ashelldisponibles
= Split(contenidoarchivo, gb.
NewLine,
"'",
True).
Extract(1,
-1) ashelladecuados = OrdenesConSalida(orden, ashelldisponibles)
'Asignamos cada uno de los disponibles
Shell adisponibles
[j
] & orden
To salida
Print "La orden" & orden
& "funcionará con " & adisponibles
[j
] posibilidades.Add(adisponibles[j])
ostias que no le gusta al editor de la comunidad que tenga que "i" entre corchetes!!!..madre mía!.
Fijaros que he cambiado la i por la j y ya no lo hace!. Lo interpreta como etiqueta para cursivas.
Por los derechos de la variable i en los arrays!.
Saludos
"El buen perfume en frasco pequeño se vende"
Mensajes: 361
Temas: 7
Gracias Recibidas: 82 en 68 posts
Gracias Dadas: 78
Registro en: May 2020
Pues no sé cómo lo haces, pero a mi me sale bien. Desde donde copias el código? desde el IDE? Quizás la razón sea que lo pegas en el editor del foro de texto enriquecido, yo lo hago pulsando el botón 'Fuente HTML' que no interpreta etiquetas. Luego seleccionas el código y das a la gamba naranja para poner el lenguaje y sale todo bien (aunque si editas el mensaje, se vuelve a joder...).
GAMBAS
'Asignamos cada uno de los disponibles
Shell adisponibles
[i
] & orden
To salida
Print "La orden" & orden
& "funcionará con " & adisponibles
[i
] posibilidades.Add(adisponibles[i])
Saludos
Por favor, usa el corrector ortográfico antes de pulsar el botón 'Enviar'
Mensajes: 1,004
Temas: 356
Gracias Recibidas: 240 en 175 posts
Gracias Dadas: 161
Registro en: Jul 2020
(26-02-2021, 21:58)jguardon escribió: Pues no sé cómo lo haces, pero a mi me sale bien. Desde donde copias el código? desde el IDE? Quizás la razón sea que lo pegas en el editor del foro de texto enriquecido, yo lo hago pulsando el botón 'Fuente HTML' que no interpreta etiquetas. Luego seleccionas el código y das a la gamba naranja para poner el lenguaje y sale todo bien (aunque si editas el mensaje, se vuelve a joder...).
Desde el propio editor de Gambas, seleccionar y copiar. Luego en el editor de la comunidad, el botón de la gamba roja, escribo gambas
y entre las dos etiquetas que aparecen, pego el código del código fuente. Y vista previa.
No conocía esa forma de hacerlo, en parte parece más cómodo.
Ya nos contarás. Gracias.
Saludos
"El buen perfume en frasco pequeño se vende"