Comando de tubería

Cuando se ejecuta el comando bash, aparecerán los datos de salida. Luego, si estos datos deben procesarse varias veces para obtener el formato que deseamos, esto implica el comando de canalización (pipe), el comando de canalización utiliza el símbolo delimitador [|]. Además, el comando de canalización es diferente del [comando de ejecución continua], que explicaremos a continuación.
Supongamos que queremos saber cuántos archivos hay debajo de / etc /, entonces podemos usar ls / etc para ver, pero debido a que hay demasiados archivos debajo de / etc, la pantalla está llena, no sé cuál es la salida anterior Que? En este momento, podemos ayudar con el comando less:

	ubuntu@ubuntu-virtual-machine:~$ ls -al /etc | less

De esta manera, la salida de contenido con el comando ls puede leerse con less, y con la función de less, podemos voltear la información relevante de un lado a otro.
De hecho, el comando de canalización [|] solo puede procesar la información correcta pasada a través del comando anterior, es decir, la información de salida estándar, y no hay capacidad de procesamiento directo para errores estándar. Entonces, el comando general de canalización puede representarse mediante la siguiente figura:
Inserte la descripción de la imagen aquí
los primeros datos que siguen a cada canalización deben ser [comando] y este comando debe ser capaz de aceptar datos de entrada estándar. Dicho comando puede ser un comando de canalización. Por ejemplo, less / more / head / tail puede aceptar comandos de canalización de entrada estándar. Por ejemplo, ls / cp / mv no es un comando de canalización, porque ls / cp / mv no acepta datos de stdin, es decir, Hay dos cosas principales a las que debe prestar atención en los
comandos de canalización : · El comando de canalización Jinhui maneja la salida estándar e ignora los errores estándar;
· El comando de canalización debe ser capaz de aceptar datos del comando anterior como entrada estándar y continuar el procesamiento.
Nota: Si el comando de canalización debe utilizar el error estándar, ¿cómo tratarlo? De hecho, a través de la redirección del flujo de datos, deje que 2> & 1 se agregue al comando, puede hacer que 2> se convierta en 1>.

Publicado 53 artículos originales · elogiado 16 · visitas 2213

Supongo que te gusta

Origin blog.csdn.net/m0_37757533/article/details/102887516
Recomendado
Clasificación