Conceptos básicos de los comandos de Linux: printf | Activar el administrador del sistema

¿Recuerdas haber aprendido las raíces de las palabras en tus lecciones de idiomas? Para los hablantes de inglés como yo, gran parte de nuestro idioma se compone de raíces griegas y latinas, con prefijos y sufijos agregados para crear nuevas palabras. Del mismo modo, los comandos utilizados en varios idiomas suelen tener una convención de nomenclatura común e incluso pueden realizar tareas similares.

el printf El comando se remonta al mundo del desarrollo, pero también brinda una utilidad práctica al administrador del sistema. Derivado de print función en lenguajes de programación C, ofrece al usuario la opción de una cadena de salida formateada. Funciona con texto, salida digital o una combinación de ambos. Esto puede ser poderoso cuando se asocia con una variable.

Índice

    la sintaxis

    La sintaxis del comando de printf es bastante sencillo de acuerdo con la página de manual, sin embargo, puede volverse confuso rápidamente. La sintaxis básica es la siguiente:

    printf FORMAT [ARGUMENT]...
    printf OPTION

    En el primer ejemplo, FORMATO modifica la salida de la misma manera que en los lenguajes C.

    Donde se pone raro...

    Aquí se describen tres tipos de objetos: caracteres estándar, caracteres interpretados y especificaciones de conversión. Veamos los tres a continuación:

    1. Caracteres estándar insertados directamente en la salida.

    2. Caracteres interpretados marcados por (visto a continuación):

    Caracteres comunes interpretados:

    "comillas dobles
    \barra invertida
    BRetroceso
    vsno producir ninguna otra salida
    miescapar
    nonueva línea
    tpestaña horizontal
    vpestaña vertical

    3. Especificaciones de conversión (cambia la forma en que se traduce un argumento en la salida).

    Cada especificación de conversión está anotada por el % y termina con un carácter de conversión (ver más abajo):

    d, yoUn número entero (expresado como un decimal)
    vosotrasUn número entero (expresado como un número decimal sin signo)
    x, xUn número entero (expresado en hexadecimal sin signo)
    oUn número entero (expresado en octal sin signo)
    sUna cuerda
    contraUn número entero (expresado en ASCII)

    Hay otros, sin embargo, estos son algunos de los más comunes.

    A continuación, veamos el uso.

    Uso básico

    Los casos de uso más básicos para printf produce cadenas de texto sin recibir un error.

    Visto aquí:

    [[email protected] ~]$ printf "Hello World."
    Hello World.

    Si quisieras ir un paso más allá, podrías hacer algo como esto:

    [[email protected] ~]$ printf "Hi, my name is Tyler. I write for %s. A great publication for system administrators." "Enable Sysadmin." 
    
    Hi, my name is Tyler. I write for Enable Sysadmin. A great publication for system administrators. 

    El ejemplo anterior es solo un poco más avanzado debido al uso de un CADENA DE CARACTERES. el FORMATO parte del comando está entre comillas. Tenemos una especificación de conversión (CADENA DE CARACTERES) que devuelve "Habilitar Sysadmin" en lugar de %s.

    También puedes usar printf en colaboración con variables ambientales hacer algunas cosas muy interesantes. Un ejemplo simple de esto se puede probar pasando lo siguiente:

    [[email protected] ~]$ printf "Hello, I am %s.n" $LOGNAME
    Hello, I am tcarrigan.

    Esto pasa el CADENA DE CARACTERES como variable ambiental $ NOMBRE DE REGISTRO, que es el nombre de usuario de la cuenta que ejecuta el comando. Puede ver la diferencia a continuación después de cambiar de cuenta:

    [[email protected] ~]# printf "I am %s.n" g$LOGNAME
    I am groot.

    Lo siento, no pude evitarlo.

    Conclusión

    Bromas aparte, el printf El comando puede ser una herramienta útil, especialmente si ya tiene algo de experiencia con los lenguajes de programación C. De lo contrario, la utilidad sigue ahí, pero tendrá que trabajar un poco más para aprovechar todo el poder del comando.

    Artículos de interés

    Subir