50 perguntas e respostas da entrevista sobre scripts de shell (2026)

Aqui estรฃo as perguntas e respostas da entrevista do Shell Scripting para candidatos mais novos e experientes para conseguir o emprego dos sonhos.

 

Perguntas e respostas da entrevista sobre scripts Shell do Linux

1) O que รฉ uma concha?

Shell รฉ uma interface entre o usuรกrio e o kernel. Mesmo que possa haver apenas um kernel; um sistema pode ter muitos shell rodando simultaneamente. Assim, sempre que um usuรกrio insere um comando atravรฉs do teclado, o shell se comunica com o kernel para executรก-lo e entรฃo exibir a saรญda ao usuรกrio.

๐Ÿ‘‰ Download gratuito de PDF: Perguntas e respostas da entrevista sobre scripts de shell


2) O que รฉ Shell Script?

Shell Scripting รฉ um programa de computador de cรณdigo aberto projetado para ser executado pelo shell Unix/Linux. Shell Scripting รฉ um programa para escrever uma sรฉrie de comandos para o shell executar. Ele pode combinar sequรชncias de comandos longas e repetitivas em um script รบnico e simples que pode ser armazenado e executado a qualquer momento, o que reduz os esforรงos de programaรงรฃo.

Perguntas da entrevista sobre scripts de shell


3) Quais sรฃo os diferentes tipos de shells comumente usados โ€‹โ€‹em um sistema Linux tรญpico?

csh,ksh,bash,Bourne . O shell mais comumente usado e avanรงado usado hoje รฉ o โ€œBashโ€.


4) Qual รฉ o equivalente a um atalho de arquivo que temos em uma janela em um sistema Linux?

Os atalhos sรฃo criados usando โ€œlinksโ€ no Linux. Existem dois tipos de links que podem ser usados, nomeadamente โ€œlink suaveโ€ e โ€œlink fรญsicoโ€.


5) Qual รฉ a diferenรงa entre links fรญsicos e fรญsicos?

Soft links sรฃo links para o nome do arquivo e tambรฉm podem residir em diferentes sistemas de arquivos; no entanto, os links fรญsicos sรฃo vinculados ao inode do arquivo e devem estar no mesmo sistema de arquivos do arquivo. A exclusรฃo do arquivo original torna o link virtual inativo (link quebrado), mas nรฃo afeta o link fรญsico (o link fรญsico ainda acessarรก uma cรณpia do arquivo)


6) Como vocรช passarรก e acessarรก argumentos para um script no Linux?

Argumentos podem ser passados โ€‹โ€‹como:

scriptName โ€œArg1โ€ โ€œArg2โ€ณโ€ฆ.โ€Argnโ€ e pode ser acessado dentro do script como $1 , $2 .. $n


7) Qual รฉ a diferenรงa entre $* e $@?

$@ trata cada argumento citado como argumentos separados, mas $* considerarรก todo o conjunto de parรขmetros posicionais como uma รบnica string.


8) Use o comando sed para substituir o conteรบdo do arquivo (comando emulate tac)

Por exemplo:

if cat fille
ABCD
EFGH

Entรฃo O/p deve ser

EFGH
ABCD

sed '1! G; h;$!d' file1

Aqui o comando G รฉ anexado ao espaรงo padrรฃo,

O comando h copia o buffer padrรฃo para armazenar o buffer

ed comando exclui o espaรงo padrรฃo atual.


9) Dado um arquivo, substitua todas as ocorrรชncias da palavra โ€œABCโ€ por โ€œDEFโ€ de 5th linha atรฉ o fim apenas nas linhas que contรฉm a palavra โ€œMNOโ€

sed โ€“n '5,$p' file1|sed '/MNO/s/ABC/DEF/'

10) Dado um arquivo, escreva uma sequรชncia de comandos para encontrar a contagem de cada palavra.

tr โ€“s  "(backslash)040" <file1|tr โ€“s  "(backslash)011"|tr "(backslash)040 (backslash)011" "(backslash)012" |uniq โ€“c
where "(backslash)040" is octal equivalent of "space"

โ€œ(barra invertida)011โ€ รฉ um equivalente octal de โ€œcaractere de tabulaรงรฃoโ€ e

โ€œ(barra invertida)012โ€ รฉ um equivalente octal do caractere de nova linha.


11) Como vocรช encontrarรก o 99th linha de um arquivo usando apenas o comando tail e head?

cauda +99 arquivo1 | cabeรงa -1


12) Imprima o 10th linha sem usar o comando tail e head.

sed โ€“n '10p' file1

13) No meu shell bash, quero que meu prompt esteja no formato '$โ€Present Working Directoryโ€:โ€hostnameโ€> e carregue um arquivo contendo uma lista de funรงรตes definidas pelo usuรกrio assim que eu fizer login, como vocรช automatizarรก isso ?

No shell bash, podemos criar o arquivo โ€œ.profileโ€ que รฉ invocado automaticamente assim que eu faรงo login e escrevo a seguinte sintaxe nele.

export PS1='$ `pwd`:`hostname`>' .File1

Aqui, Arquivo1 รฉ o arquivo que contรฉm as funรงรตes definidas pelo usuรกrio e โ€œ.โ€ invoca este arquivo no shell atual.


14) Explique sobre o bit de permissรฃo โ€œsโ€ em um arquivo?

O bit โ€œsโ€ รฉ chamado de bit โ€œdefinir ID do usuรกrioโ€ (SUID).

O bit โ€œsโ€ em um arquivo faz com que o processo tenha os privilรฉgios do proprietรกrio do arquivo durante a instรขncia do programa.

Por exemplo, executar o comando โ€œpasswdโ€ para alterar a senha atual faz com que o usuรกrio grave sua nova senha no arquivo shadow, mesmo que tenha โ€œrootโ€ como proprietรกrio.


15) Quero criar um diretรณrio de forma que qualquer pessoa do grupo possa criar um arquivo e acessar o arquivo de qualquer pessoa nele, mas ninguรฉm seja capaz de excluir um arquivo que nรฃo seja aquele criado por ele mesmo.

Podemos criar o diretรณrio dando acesso de leitura e execuรงรฃo a todos no grupo e definindo seu sticky bit โ€œtโ€ como segue:

mkdir direc1
 
chmod g+wx direc1
 
chmod +t direc1

16) Como vocรช pode descobrir hรก quanto tempo o sistema estรก funcionando?

Podemos descobrir isso usando o comando โ€œuptimeโ€.


17) Como qualquer usuรกrio pode descobrir todas as informaรงรตes sobre um usuรกrio especรญfico, como seu shell padrรฃo, nome real, diretรณrio padrรฃo, quando e hรก quanto tempo ele usa o sistema?

dedo โ€œloginNameโ€ โ€ฆonde loginName รฉ o nome de login do

usuรกrio cujas informaรงรตes sรฃo esperadas.


18) Qual รฉ a diferenรงa entre $$ e $!?

$$ fornece o ID do processo atualmente em execuรงรฃo, enquanto $! Mostra o ID do processo que recentemente entrou em segundo plano.


19) O que sรฃo processos zumbis?

Esses sรฃo os processos que morreram, mas cujo status de saรญda ainda nรฃo foi escolhido pelo processo pai. Esses processos, mesmo que nรฃo estejam funcionais, ainda possuem sua entrada de ID de processo na tabela de processos.


20) Como vocรช copiarรก um arquivo de uma mรกquina para outra?

Podemos usar utilitรกrios como โ€œftpโ€, โ€œscpโ€ ou โ€œrsyncโ€ para copiar um arquivo de uma mรกquina para outra.

Por exemplo, usando FTP:

nome de host FTP

>coloque arquivo1

>tchau

Acima copia o arquivo file1 do sistema local para o sistema de destino cujo nome de host รฉ especificado.


Perguntas e respostas da entrevista sobre scripts de shell para experientes

21) Desejo monitorar um arquivo de log em atualizaรงรฃo contรญnua. Qual comando pode ser usado para conseguir isso com mais eficiรชncia?

Podemos usar tail โ€“f nome do arquivo. Isso farรก com que apenas as รบltimas 10 linhas padrรฃo sejam exibidas em std o/p, que mostra continuamente a parte de atualizaรงรฃo do arquivo.


22) Quero me conectar a um servidor remoto e executar alguns comandos, como posso conseguir isso?

Podemos usar o ssh para fazer isso:

ssh nome de usuรกrio@serverIP -p sshport

Exemplo

ssh raiz@122.52.251.171 -p 22

Assim que o comando acima for executado, vocรช serรก solicitado a inserir a senha


23) Tenho 2 arquivos e quero imprimir os registros que sรฃo comuns a ambos.

Podemos usar o comando โ€œcommโ€ da seguinte forma:

comm -12 arquivo1 arquivo2โ€ฆ 12 suprimirรก o conteรบdo que รฉ

exclusivo para 1st XXI.nd arquivo respectivamente.


24) Escreva um script para imprimir os 10 primeiros elementos da sรฉrie Fibonacci.

  
#!/bin/sh
a=1
b=1
echo $a
echo $b
for I in 1 2 3 4 5 6 7 8
do
c=a
b=$a
b=$(($a+$c))
echo $b
done

25) Como vocรช se conectarรก a um servidor de banco de dados Linux?

Podemos usar o utilitรกrio isql que vem com o driver cliente aberto da seguinte maneira:

isql โ€“S serverName โ€“U nome de usuรกrio โ€“P senha


26) Quais sรฃo os 3 streams padrรฃo no Linux?

0 โ€“ Entrada Padrรฃo1 โ€“ Saรญda Padrรฃo2 โ€“ Erro Padrรฃo


27) Quero ler todas as entradas do comando do arquivo1, direcionar todas as saรญdas para o arquivo2 e o erro para o arquivo 3, como posso conseguir isso?

comando arquivo1 1>arquivo2


28) O que acontecerรก com meu processo atual quando eu executar um comando usando exec?

โ€œexecโ€ sobrepรตe o processo recรฉm-bifurcado ao processo atual; entรฃo, quando executo o comando usando exec, o comando รฉ executado no shell atual sem criar novos processos.

Por exemplo, execuรงรฃo "exec ls" no prompt de comando executarรก ls e assim que ls sair, o processo serรก encerrado


29) Como vocรช irรก emular wc โ€“l usando awk?

awk 'END {print NR} fileName'


30) Dado um arquivo, encontre a contagem de linhas que contรฉm a palavra โ€œABCโ€.

grep โ€“c โ€œABCโ€ arquivo1


31) Qual รฉ a diferenรงa entre grep e egrep?

egrep รฉ um grep estendido que suporta recursos grep adicionais como โ€œ+โ€ (1 ou mais ocorrรชncias de um caractere anterior)โ€,?โ€(0 ou 1 ocorrรชncia de um caractere anterior) e โ€œ|โ€ (correspondรชncia alternativa)


32) Como definir um array no Linux?

Sintaxe em ksh:

Set โ€“A arrayname= (element1 element2 โ€ฆ.. element)
In bash
A=(element1 element2 element3 โ€ฆ. elementn)

33) Escreva a sintaxe do loop โ€œforโ€

Sintaxe:

for  iterator in (elements)
do
execute commands
done

34) Como vocรช encontrarรก o espaรงo total em disco usado por um usuรกrio especรญfico?

du -s /home/user1โ€ฆ.onde user1 รฉ o usuรกrio para quem o espaรงo total em disco precisa ser encontrado.


35) Escreva a sintaxe para condicionais โ€œifโ€ no Linux?

Sintaxe

If  condition is successful
then
execute commands
else
execute commands
fi

36) Qual รฉ o significado de $?

O comando $? fornece o status de saรญda do รบltimo comando que foi executado.


37) Como excluรญmos todas as linhas em branco de um arquivo?

sed  '^ [(backslash)011(backslash)040]*$/d' file1

onde (barra invertida)011 รฉ um equivalente octal de espaรงo e

(barra invertida)040 รฉ um equivalente octal da tabulaรงรฃo


38) Como vou inserir uma linha โ€œABCDEFโ€ a cada 100th linha de um arquivo?

sed '100i\ABCDEF' arquivo1


39) Escreva uma sequรชncia de comandos para encontrar todos os arquivos modificados em menos de 2 dias e imprima a contagem de registros de cada um.

encontrar . โ€“mtime -2 โ€“exec wc โ€“l {} \;


40) Como posso definir a permissรฃo rwx padrรฃo para todos os usuรกrios em cada arquivo criado no shell atual?

Podemos usar:

umask 777

Isso definirรก a permissรฃo rwx padrรฃo para cada arquivo criado para cada usuรกrio.


41) Como podemos encontrar o nome do processo a partir de seu ID de processo?

Podemos usar "ps โ€“p ProcessId"


42) Quais sรฃo os quatro componentes fundamentais de todo sistema de arquivos no Linux?

Bootblock, super block, inode block e Datablock sรฃo componentes fundamentais de cada sistema de arquivos no Linux.


43) O que รฉ um bloco de inicializaรงรฃo?

Este bloco contรฉm um pequeno programa chamado โ€œMaster Boot recordโ€ (MBR) que carrega o kernel durante a inicializaรงรฃo do sistema.


44) O que รฉ um superbloco?

O superbloco contรฉm todas as informaรงรตes sobre o sistema de arquivos, como o tamanho do sistema de arquivos, o tamanho do bloco usado, o nรบmero de blocos de dados livres e a lista de inodes e blocos de dados livres.


45) O que รฉ um bloco inode?

Este bloco contรฉm o inode de cada arquivo do sistema de arquivos junto com todos os atributos do arquivo, exceto seu nome.


46) Como posso enviar um e-mail com um arquivo compactado como anexo?

zip arquivo1.zip arquivo1|mailx โ€“s โ€œassuntoโ€ ID de e-mail do destinatรกrio

Conteรบdo de e-mail

EOF


47) Como criamos aliases de comando em um shell?

alias Aliasname=โ€Comando cujo alias deve ser criadoโ€.


48) O que sรฃo campos de permissรฃo โ€œcโ€ e โ€œbโ€ de um arquivo?

โ€œcโ€ e โ€œbโ€ campos de permissรฃo geralmente estรฃo associados a um arquivo de dispositivo. Ele especifica se um arquivo รฉ um arquivo de caracteres especiais ou um arquivo especial de bloco.


49) Qual รฉ a utilidade de uma linha shebang?

A linha Shebang no topo de cada script determina a localizaรงรฃo do mecanismo que serรก usado para executar o script.

Essas perguntas da entrevista tambรฉm ajudarรฃo em sua viva (oral)

Resuma esta postagem com: