Primero aprendí a codificar en un C
idioma y a usar
if ( code )
then
code
fi
hace que sea realmente difícil para mí leer mi código (no pregunte por qué). ¿Hay un sustituto para then
?
Algo como esto:
if ( code ) {
code
}
fi
Primero aprendí a codificar en un C
idioma y a usar
if ( code )
then
code
fi
hace que sea realmente difícil para mí leer mi código (no pregunte por qué). ¿Hay un sustituto para then
?
Algo como esto:
if ( code ) {
code
}
fi
Respuestas:
No hay sustituto, pero puede usar ambos si realmente necesita los frenos:
if true ; then {
something
} fi
Que utiliza un grupo de comandos innecesariamente entre paréntesis como el cuerpo del then
bloque. Cualquier comando en las llaves simplemente se ejecutará en el shell actual cuando se then
ejecute, exactamente como si las llaves no estuvieran allí.
Realmente no recomendaría este estilo en general o para el código que alguien más necesitará leer, pero le da los frenos que desea, y funcionará si está utilizando un editor que requiere bloques o algo como eso.
{ if { [[ a == aa ]];};then { echo yes;};else { echo no;}; fi;}
- básicamente, cuando usas lo bash
suficiente, la sintaxis estándar se vuelve lo suficientemente familiar, por lo que no es un gran problema.
Parece que estás en busca de la shell C ( csh
, tcsh
, etc ...). Tenga en cuenta que los expertos recomiendan no hacerlo para la programación .
No estoy seguro de si la parte que considera poco atractiva es el hecho de que then
está en la siguiente línea. Si es así, considere usar el siguiente estilo:
if condition; then
stuff
fi
Tengo que admitir que los nombres de los enunciados ortográficos al revés, como fi
for if
y esac
for case
(¡pero no elihw
for while
!) Es un poco peculiar. Pero ese es el shell Bourne estándar, la sintaxis de shell más portátil que puede usar.
then
poco atractivo, es solo que mi editor resaltará los {}
pares correspondientes , y eso es útil para cuando tengo algún tipo de error porque entonces puedo ver fácilmente todas mis if
declaraciones y ver si algo salió mal .
vi
El %
comando de ese plus que salta al paréntesis / paréntesis / paréntesis correspondiente. Yo simpatizo. Echo vi
de menos el %
comando al programar en Python.
Tal vez esto sea más fácil para los ojos:
[ condition ] && {
# statement 1
# statment 2
# ...
}
Aparte de eso, solo acostúmbrate. Usa los modismos del lenguaje.
Lo siguiente está cerca de allí. Y raro
: if; { code; } && {
code
}
Personalmente nunca me gustó el ...
if true; then
more;fi
... formarme a mí mismo. Me gusta cuando las palabras de control llevan . Siempre me pareció extraño que la ...;then
forma predominante surgiera en absoluto.
if this && that
then do these things too
else i will probably get upset
fi
Es casi completamente opuesto a su solicitud, pero es otra forma de hacerlo. También puede agregar cualquier redireccionamiento deseado a la fi
línea según sea necesario y se aplicará a todo el bloque.
if(...) {
, es decir, dejar una llave de apertura en la misma línea que if
en los lenguajes tipo C.
if
comando, incluso si está en la línea siguiente.
;
delim en ese caso. Es por eso que lo hacen.
:
shell incorporada de esta manera, solo para que una línea de código pueda estar en byte más cerca de la sintaxis C, no se debe alentar de ninguna manera.
Yo siempre uso:
if (code); then
code;
fi
Probablemente no sea exactamente lo que quieres, pero es un poco más parecido.