O operador de tubo (|) é usado para executar dois ou mais comandos relacionados por vez. A entrada do próximo comando será a saída do comando anterior. Portanto, o sucesso de cada comando depende do sucesso do comando anterior sem o primeiro comando. No comando seguinte, o primeiro comando, ls descobrirá a lista de arquivos e pastas do local atual e enviará a saída como entrada para o segundo comando, Banheiro. Ele imprimirá o número total de linhas, palavras e caracteres com base nos dados de entrada.
$ ls -l | wc -lwc
Semicolon (;) Operador
O operador semicolon (;) é usado para executar dois ou mais comandos não relacionados. Isso significa que a saída de cada comando não depende de outros comandos. No exemplo a seguir, três tipos de comandos são combinados e a falha de cada comando não criará um efeito na saída de outros comandos. O primeiro comando imprimirá o conteúdo de um arquivo, o segundo comando fará um diretório e o terceiro comando mudará o diretório atual.
$ Cat MyFile.TXT ; mkdir newdir; CD Desktop
Operador lógico e (&&)
Os comandos executados por lógicos e (&&) estão relacionados entre si, como o comando de tubo (|). Portanto, se o comando anterior não será executado com sucesso, os próximos comandos não funcionarão. No exemplo seguinte, dois comandos, Mkdir e RMDIR combinados por && operadores. Portanto, o comando mkdir falhou em executar com sucesso o comando rmdir não será executado. De acordo com a saída do comando LS, o diretório mydir já existe no local atual. Portanto, o primeiro comando não será executado e para este segundo comando não será executado também.
$ ls
$ mkdir mydir && rmdir temp
$ ls
Operador lógico ou (||)
O operador lógico ou (||) é o oposto do operador lógico e (&&). O próximo comando será executado se o comando anterior falhar em executar. Três comandos CAT são combinados com ou (||) operador no exemplo a seguir. Quando você executar o comando, antes de tudo, ele tentará exibir o conteúdo do gato.arquivo txt. Se não existir tal arquivo no local atual, ele tentará executar o próximo comando. De acordo com a saída, pássaro.O arquivo txt existe no local atual e o conteúdo deste arquivo é exibido.
$ gato gato.txt || gato cachorro.txt || pássaro gato.TXT
Vários comandos com vários operadores
Você pode usar vários operadores para executar vários comandos por vez. No exemplo seguinte, três comandos são combinados com ou (||) e e (&&) operadores. Depois de executar o comando, antes de tudo, ele mudará o diretório atual para Newdir se o diretório existir. Se este comando falhar, ele criará o diretório executando o segundo comando e imprima a mensagem: “O diretório é criado.”De acordo com a saída, o diretório NewDir não existe no local atual. Então, a mensagem de erro é exibida e o diretório é criado posteriormente.
$ CD NEWDIR || mkdir newdir && eco "diretório é criado"
Operador de combinação
Dois ou mais comandos podem ser combinados usando este operador e se a execução do primeiro comando falhar, o segundo comando não será executado. No exemplo seguinte, ou e e operadores combinados são usados juntos. Os primeiros comandos verificarão se o diretório temp existe no local atual ou não. Se o primeiro comando falhar, ele criará um diretório temporário e imprimirá uma mensagem. O último comando mostrará a lista de diretórios atual.
$ [-d Temp] || mkdir temp; O diretório de eco temp é criado agora.; && ls
Operador de Precedência ()
Você pode usar este operador para agrupar os comandos no momento da execução. Aqui, cada grupo funcionará como uma única tarefa. No exemplo seguinte, dois grupos de comando são definidos e se o primeiro grupo não conseguir executar, o segundo grupo será executado.
$ (temp cd && ls -a) || (Mkdir temp && ls)
Este tutorial explicou os operadores usados principalmente para executar vários comandos no Linux. Mas existem muitos outros operadores em Bash que são usados para executar dois ou mais comandos juntos. Estes são ampeiros e (&), redirecionamento (, >>), lógicos não (!), Combinação () etc.