Как удалить одинарную кавычку из имени файла? [дубликат]

Hay potencialmente dos preguntas aquí:

  1. ¿Puedo escribir scripts en múltiples variantes de shell y usarlos juntos?
  2. ¿Puedo escribir un script para una variante de shell y hacer que lo ejecute otro intérprete de shell?

Para la primera pregunta:

Sí, siempre que los scripts sean ejecutados por los intérpretes de shell para los que fueron escritos. Tenga en cuenta que no importa qué shell use para el trabajo interactivo , siempre que los scripts tengan líneas#!-adecuadas y/o se ejecuten con intérpretes explícitos (, p.ksh myscript).

Un script funciona como un comando que usted (o alguien más )escribió. Otro script podría llamarlo sin importar en qué idioma se escribió (suponiendo que sea ejecutable y tenga una#!-línea )correcta.

Para el segundo:

Si escribe sus scripts usando solo el mínimo común denominador en términos de sintaxis y gramática (que en el caso de estos tres shells es POSIX sh), puede estar bastante seguro de que se ejecutará bajo todos estos shells (pero supongo que puede haber casos extremos en los que puede faltar la conformidad POSIX de un shell ). Pero, ¿por qué tendría zsho kshejecutar un script shcuando podría ejecutarlo con /bin/sh?

ksh93ybash(y posiblemente zshtambién, pero no estoy muy versado en que el caparazón)ofrece bastante similitud en sus extensiones al plano sh, pero hay situaciones en las que aunque la sintaxis y la semántica aparentemente están de acuerdo, surgen problemas extraños de otras diferencias .

En el caso general, no, no puede asumir que un shell podrá ejecutar con éxito y correctamente un script escrito para otro shell. Por ejemplo, un script bashpodría usar un script kshcomo si fuera cualquier otro comando,pero nunca debería sourceun script ksh.

Idealmente, debe asumir que los diferentes shells son lenguajes de secuencias de comandos completamente diferentes y escribir para un shell en particular, tal como no escribiría una pieza de código de Python y esperaría que se ejecutara en Perl o Ruby. (a menos que fuera alguna escritura políglota inventada).

226
21.05.2021, 21:36
0 ответов

Теги

Похожие вопросы