GNU/Linux >> Tutoriales Linux >  >> Linux

Defina la función en la línea de comandos de Unix/Linux (por ejemplo, BASH)

Citando mi respuesta para una pregunta similar en Ask Ubuntu:

Funciones en bash se denominan esencialmente comandos compuestos (o bloques de código). Desde man bash :

Compound Commands
   A compound command is one of the following:
   ...
   { list; }
          list  is simply executed in the current shell environment.  list
          must be terminated with a newline or semicolon.  This  is  known
          as  a  group  command. 

...
Shell Function Definitions
   A shell function is an object that is called like a simple command  and
   executes  a  compound  command with a new set of positional parameters.
   ... [C]ommand is usually a list of commands between { and },  but
   may  be  any command listed under Compound Commands above.

No se da ninguna razón, es solo la sintaxis.

Prueba con un punto y coma después de wc -l :

numresults(){ ls "$1"/RealignerTargetCreator | wc -l; }

No use ls | wc -l ya que puede darte resultados erróneos si los nombres de los archivos tienen líneas nuevas. Puede usar esta función en su lugar:

numresults() { find "$1" -mindepth 1 -printf '.' | wc -c; }

Linux
  1. Cómo borrar el historial de línea de comandos BASH en Linux

  2. 5 Finalización estándar disponible en la línea de comandos de Linux Bash

  3. 6 Operadores de encadenamiento de línea de comandos de Bash Shell en Linux

  4. ejecutar script php (función php) en linux bash

  5. Línea de comandos solo SO UNIX/Linux

Comando mkdir en Linux/Unix

Comando Grep en Linux/UNIX

Comando ls en Linux/UNIX

comando cp en Linux/UNIX

Buscar comando en Linux/UNIX

15 ejemplos prácticos de comandos Grep en Linux / UNIX