tutorial - ¿Cómo reconoce bash un enlace?
para que se usa elastic search (1)
En un script bash que captura un enlace href, ¿cómo sabe bash que TEXT es un enlace y no una cadena típica? ¿Por qué al final cuando $ TEXT = "www.google.com", TEXT sigue siendo un enlace? ¿Puedes hacer eso con un archivo? Por ejemplo, tener un ''Haz clic en mí'' que ejecuta un scrip.
shopt -s nocasematch
TEXT=''<a href="http://www.google.com/search/something/lulz/here2 i=!mfo1iu489fn1o2jlk21m4098mdoi">"test link"</a><br>''
TEXT=${TEXT##*href=/"}
TEXT=${TEXT%%/"*}
TEXT=${TEXT##*//}
TEXT=${TEXT%%/*}
echo $TEXT
Yo diría que bash en sí mismo no reconoce enlaces. Pero algunos emuladores de terminal
- en el terminal gnome cuando escribes
echo http://www.google.com
o el terminal "echo www.google.com" con te permite hacer clic en el enlace, peroecho google.com
no se reconocerá como uno, lo más probable es que dependa en el prefijohttp://
(que indica claramente que es un enlace) o el prefijowww
(que a menudo se encuentra en www dirección), - La terminología de E17 actúa de manera similar gnome teminal en este sentido,
- probablemente la mayoría de los demás emuladores de terminal actuarán de manera similar, pero eso 2 puedo confirmarlo.
De cómo se usan los scripts bash, diría que no existe una forma independiente de implementación para agregar URLs clicables en bash. Pero puede utilizar la forma descrita para obtener un comportamiento similar en emuladores de terminal. Alternativamente, obtenga de parte del usuario alguna variable sí-no, y úsela en una llamada de programa condicional:
read openpage
if $openpage -eq "yes"
# open browser with your URL
fi
donde la forma de abrir la página web se describe, por ejemplo, aquí .
En cuanto a los archivos, me quedaría con solo if $runfile -eq "yes" then command; fi
if $runfile -eq "yes" then command; fi
. Básicamente, bash no estaba hecho con ninguna interacción GUI en mente, es una terminal después de todo.