[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
exemplos para ajudar a turma a dominar o SHELL
From: |
Ivan lopes |
Subject: |
exemplos para ajudar a turma a dominar o SHELL |
Date: |
Wed, 21 Jun 2006 02:55:39 -0200 |
$ ./cmd -d # gerando erro no comando `cmd'.
./cmd.sh: illegal option -- d
Unknown option!
$ ./cmd -d 2> file.err.txt # direciono FD 2 do comando para o arquivo
# `file.err.txt'.
$ ./cat file.err.txt
./cmd.sh: illegal option -- d
Unknown option!
$ ./cmd -d 2>&1 # FD 2 recebe as caracteristicas de
1. logo o
./cmd.sh: illegal option -- d # erro vai para a tela como se fosse o STDOUT.
Unknown option!
$ ./cmd.sh -a -d
-a processed.
./cmd.sh: illegal option -- d
Unknown option!
$ ./cmd.sh -a -d 2>&1 2> out.txt
-a processed.
$ ./cmd.sh -a -d 2>&1 1> out.txt
./cmd.sh: illegal option -- d
Unknown option!
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 0< music.txt
cat -n
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 7< music.txt
cat -n <&7
exec 7<&-
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 3< arquivo.txt # Criando FD 3, e alterando o nome do nodo para
# o nome do arquivo `/caminho/arquivo.txt'.
exec 7<&3 # Criando FD 7, e duplicando FD 3, ou seja, FD 3
# possui as mesmas caracteristicas de FD 3.
cat -n <&7 # FD 7 direcionado para o comando.
exec 7<&- # FD 7 liberado.
exec 3<&- # FD 3 liberado.
#exec 7<&- 3<&-
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
echo
exec 4< arquivo1.txt # Criando FD 4, e alterando o nome do nodo para
# o nome do arquivo `/caminho/arquivo1.txt'.
cat -n <&4 # Direcionando arquivo definido em FD 4 como fluxo
# para o comando.
exec 5< arquivo2.txt # Criando FD 5, e alterando o nome do nodo para
# o nome do arquivo `/caminho/arquivo2.txt'.
cat -n <&5 # Direcionando arquivo definido em FD 5 como fluxo
# para o comando.
exec 6< arquivo3.txt
cat -n <&6
exec 4<&- 5<&- 6<&- # Fechando FD 4, 5 e 6.
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 4< a.txt
exec 5< b.txt
exec 6< c.txt
cat -n <&6
cat -n <&5
cat -n <&4
exec 4<&- 5<&- 6<&-
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 4< a.txt
exec 5< b.txt
exec 6< c.txt
cat -n <&6
cat -n <&5
cat -n <&4
exec 4<&- 5<&- 6<&-
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 4< a.txt
exec 5< b.txt
exec 6< c.txt
exec 0< arquivo.txt
exec 1> out.txt
# exec < arquivo.txt
# exec > out.txt
cat - | tr [a-z] [A-Z] # cat arquivo.txt | tr [a-z] [A-Z] > out.txt
cat -n <&6 # cat -n c.txt > out.txt
cat -n <&5 # cat -n b.txt > out.txt
cat -n <&4 # cat -n a.txt > out.txt
exec 4<&- 5<&- 6<&-
exit 0
===============================<8=========================================
#!/bin/bash
# 0 - stdin
# 1 - stdout
# 2 - stderr
exec 4>&1 # stdout duplicado ( FD 4 tem as mesmas caracteristicas
# do STDOUT), aponta para o terminal.
exec 1>out.txt # stdout aponta para `out.txt'
echo Estou escrevendo no arquivo. # echo "TEXTO" > out.txt
echo Estou escrevendo no terminal. >&4 # echo "TEXTO"
echo Estou escrevendo no arquivo novamente. # echo "TEXTO" > out.txt
exec 1>&4 # FD 1 recebe as caracteristicas de FD 4.
# FD 1 ressetado.
exec 4>&- # FD 4 eh liberado.
exit 0
--
[ ]'s
Ivan Carlos Da Silva Lopes
Engenheiro Eletronico e Computacao
UFRJ
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- exemplos para ajudar a turma a dominar o SHELL,
Ivan lopes <=