Índice analítico[Ocultar][Mostrar]
- 1. Que é exactamente unha cuncha?
- 2. Que é exactamente Shell Scripting?
- 3. Explica as vantaxes dos scripts de shell.
- 4. Describir a programación da GUI.
- 5. Na programación de shell, que é exactamente un superbloque?
- 6. Enumera os numerosos tipos de cunchas accesibles.
- 7. Escribe a distinción entre Bourne Shell e C Shell.
- 8. Que son exactamente as variables Shell?
- 9. Cales son os moitos tipos de variables no Shell Script?
- 10. Que comando se usa para executar un ficheiro de shell?
- 11. Que me podes dicir sobre o Super Block no script de Shell?
- 12. Que é exactamente un metapersonaxe?
- 13. Cal é a distinción entre ligazóns brandas e duras?
- 14. Cal é o significado da liña Shebang en Shell Scripting?
- 15. Por que varios pasos pasa un proceso Linux?
- 16. Describe Crontab.
- 17. Que son exactamente as instrucións de control?
- 18. Cal é a distinción entre $* e $@?
- 19. Explica como comparas cadeas nun script de shell.
- 20. Como podo crear, ler e eliminar ficheiros?
- 21. É posible distinguir ligazóns duras e suaves nos scripts de shell?
- 22. Como solucionará os erros no programa shell?
- 23. Cantos bloques hai nun sistema de ficheiros?
- 24. Por que o bash é unha linguaxe de tipo débil?
- 25. Canto tempo ten unha variable nun script de shell?
- 26. Nomea o comando de substitución de eco.
- 27. Definir IFS
- 28. É posible executar numerosos scripts nun Shell?
- 29. Cales son os moitos modos dos editores vi?
- 30. Cal é a diferenza entre $! e $$?
- 31. Que significa $#?
- 32. Nomee o comando utilizado para crear a copia de seguridade.
- 33. Cando é inadecuado utilizar Shell Scripting?
- 34. Como te vas conectar a un servidor de bases de datos desde Linux?
- 35. Cales son os dous ficheiros de comandos crontab?
- 36. Cales son as tres proteccións de seguridade UNIX distintas para un ficheiro ou datos?
- 37. Explica brevemente o comando sed utilizando un exemplo.
- 38. No shell script, cal é o propósito das ferramentas que veñen co controlador de cliente aberto?
- 49. Nomea o comando que se debe utilizar para determinar a duración do sistema.
- 40. Fai un guión para engadir numerosos valores.
- 41. Crea un exemplo de función.
- Conclusión
Un script de shell é un programa de ordenador ou intérprete de liña de comandos que está destinado a ser executado polo shell de Unix. O aspecto máis agradable de construír un script de shell é que as instrucións e a sintaxe son idénticas ás introducidas directamente na liña de comandos.
Linux é un popular sistema operativo de código aberto recoñecido pola súa alta seguridade e interface de liña de comandos. É vital que os aspirantes a enxeñeiros de DevOps comprendan os scripts de shell ou os scripts bash.
Se estás familiarizado co shell scripting e estás a preparar unha entrevista de traballo, este artigo de preguntas e respostas de shell scripting fornecerache as mellores preguntas de shell scripting que facilitarán a túa preparación.
1. Que é exactamente unha cuncha?
O shell serve de ponte entre o usuario e o núcleo. Aínda que só pode haber un núcleo, un sistema pode ter varias shells executando ao mesmo tempo.
Como resultado, cada vez que un usuario escribe un comando no teclado, o shell fala co kernel para executalo e despois mostra os resultados ao usuario.
2. Que é exactamente Shell Scripting?
Shell Scripting é un software gratuíto e de código aberto que se executa no shell Unix/Linux. O software Shell Scripting permítelle escribir unha serie de comandos que executará o shell.
Pode integrar secuencias de comandos longas e repetitivas nun único e sinxelo script que se pode gardar e executar en calquera momento, reducindo os esforzos de programación.
3. Explica as vantaxes dos scripts de shell.
- Case todos os sistemas operativos actuais, incluídos UNIX, Linux, BSD e Mac OS X, poden executar scripts de shell xa que se crean nunha linguaxe interpretada.
- Unha ferramenta de depuración que é interactiva, así como un inicio rápido.
- Aforra tempo ao axudar a automatizar as tarefas administrativas.
- Os programadores non precisan axustar a súa sintaxe porque o comando e a sintaxe son os mesmos que os colocados directamente na liña de comandos.
- Os scripts de shell son sinxelos de usar e escribir.
- Con esta ferramenta, pódense producir aplicacións de software de acordo coas súas respectivas plataformas.
- En lugar de instrucións únicas, pódense usar para a execución masiva.
- Podes usalo para crear o teu propio sistema operativo personalizado coa funcionalidade necesaria.
4. Describir a programación da GUI.
A Gráfica Interface de usuario A programación (GUI) necesaria para operar o ordenador e as aplicacións denomínase scripting GUI. Funciona con varios sistemas operativos e úsase para controlar varios programas.
5. Na programación de shell, que é exactamente un superbloque?
Un software chamado superbloque almacena os rexistros de determinados sistemas de ficheiros. O tamaño, o reconto de bloques cheos e baleiros, os datos de uso, o tamaño do grupo de bloques e a localización e tamaño das táboas de inodos están entre as propiedades que se poden atopar nun bloque.
6. Enumera os numerosos tipos de cunchas accesibles.
- Intérprete de comandos Bourne: cando se utiliza un intérprete de comandos de tipo Bourne, o indicador predeterminado é o símbolo $.
- C Shell: cando se usa un shell de tipo C, o indicador predeterminado é o carácter %.
- Intérprete de comandos Korn: Korn é unha aplicación de script de shell baseada en Unix que orixinalmente estaba baseada en scripting de shell de Bash. Este shell é moi complexo e usa un alto nivel linguaxe de programación.
- TCSH: Non hai unha única forma completa de TCSH. É como é. TCSH é unha versión máis sofisticada do shell Berkeley Unix C. Agora admite a sintaxe C.
7. Escribe a distinción entre Bourne Shell e C Shell.
Bourne Shell: a súa compacidade e velocidade distíngueno doutras cunchas. Non obstante, faltan elementos interactivos como a capacidade de lembrar solicitudes anteriores. Ademais, a aritmética e expresións lóxicas non son compatibles co shell Bourne.
C Shell: é unha mellora de UNIX que inclúe funcións interactivas como alias e historial de comandos. Contén capacidades de programación sinxelas ademais da súa gramática aritmética e de expresión incorporada.
8. Que son exactamente as variables Shell?
As variables Shell son a base de cada programa ou script Shell. As variables permiten a Shell almacenar e modificar datos dentro dunha aplicación Shell. As variables de cadea úsanse habitualmente para manter as variables de shell.
9. Cales son os moitos tipos de variables no Shell Script?
O sistema operativo (Linux) crea e define variables definidas polo sistema. Estas variables adoitan definirse en maiúsculas e pódense examinar co comando "set".
As variables definidas polo usuario son xeradas ou especificadas polos usuarios do sistema e os seus valores pódense examinar executando o comando "eco".
10. Que comando se usa para executar un ficheiro de shell?
11. Que me podes dicir sobre o Super Block no script de Shell?
Un Super Block é simplemente un software que almacena información sobre determinados sistemas de ficheiros.
Un superbloque contén información como o tamaño do bloque, o número de bloques baleiros e cheos e os seus correspondentes recontos, o tamaño e a colocación das táboas de inodos, o mapa de bloques de disco e as estatísticas de uso e o tamaño dos grupos de bloques.
12. Que é exactamente un metapersonaxe?
Un metacarácter é un carácter único que se incorpora ao programa ou ao campo de datos dun shell. Ofrece información sobre outros personaxes. Para listar todos os ficheiros que comezan co carácter 's', por exemplo, use o comando 'ls s*'.
13. Cal é a distinción entre ligazóns brandas e duras?
As ligazóns suaves están ligadas ao nome do ficheiro e poden vivir en varios sistemas de ficheiros; mentres que, as ligazóns físicas están ligadas ao inodo do ficheiro e deben estar no mesmo sistema de ficheiros que o ficheiro.
Ao eliminar o ficheiro orixinal inactiva a ligazón (ligazón rota), pero non ten ningún efecto sobre a conexión dura e a ligazón dura aínda accederá a unha copia do ficheiro.
14. Cal é o significado da liña Shebang en Shell Scripting?
A liña Shebang atópase normalmente na cabeceira do script, por exemplo, #!/bin/sh. Esta liña especifica a posición do motor. Este motor é xeralmente o que executa o script.
15. Por que varios pasos pasa un proceso Linux?
Normalmente, un proceso de Linux pasa polas seguintes catro etapas:
- Esperando: o recurso está a ser esperado polo proceso de Linux.
- En execución: agora mesmo, o proceso de Linux está en execución.
- Detido: despois dunha execución exitosa, o proceso de Linux finaliza.
- ZombieeO proceso detívose, pero a táboa de procesos segue amosándoo como activo.
16. Describe Crontab.
Crontab significa táboa cron xa que o programador de traballos "cron" úsase para realizar os traballos. É unha colección de comandos que se realizan regularmente e o nome do comando tamén controla a lista.
Tanto a programación como a ferramenta utilizada para cambiar a programación chámanse Crontab.
17. Que son exactamente as instrucións de control?
As instrucións de control indican como se executarán as distintas instrucións do guión. Xeralmente úsanse nas aplicacións de Shell para avaliar control do fluxo.
Sen estas instrucións, a execución dun script de shell procede en secuencia. As instrucións de control inflúen na forma en que se desenvolve a execución nos programas shell.
18. Cal é a distinción entre $* e $@?
$@ considera que cada argumento citado é un argumento separado, mentres que $* considera que a colección completa de parámetros posicionais é unha única cadea.
19. Explica como comparas cadeas nun script de shell.
O comando "proba" úsase para comparar cadeas de texto. Este comando compara cadeas de texto comparando os caracteres de cada cadea.
20. Como podo crear, ler e eliminar ficheiros?
21. É posible distinguir ligazóns duras e suaves nos scripts de shell?
Os scripts de Shell é unha solución forte que, como Windows, emprega ligazóns para construír atallos. As ligazóns suaves non teñen unha localización fixa e pódense atopar en todas partes no mesmo sistema de ficheiros.
Normalmente están ligados ao nome do ficheiro. As ligazóns duras, por outra banda, permanecen no mesmo sistema de ficheiros. Na maioría das situacións, as conexións duras están asociadas con nodos e teñen unha determinada posición fixa.
22. Como solucionará os erros no programa shell?
Algunhas formas comúns de solucionar erros de script son:
- Set-x úsase para permitir a depuración.
- Insira instrucións de depuración nun script de shell para mostrar información que axude a descubrir un problema.
23. Cantos bloques hai nun sistema de ficheiros?
- Superblock: este bloque proporciona detalles sobre o estado dun sistema de ficheiros, incluíndo o tamaño do bloque, o tamaño do grupo de bloques, os datos de uso, o número de bloques baleiros e cheos, o tamaño e a colocación das táboas de inodos, etc.
- Bootblock: o software do cargador de arranque, que se executa cando un usuario inicia o sistema host, almacénase neste bloque.
- Bloque de datos: este bloque de datos contén o contido do ficheiro do sistema de ficheiros.
- Táboa de inodos: UNIX trata todos os compoñentes como ficheiros e a táboa de inodos é o repositorio de todos os datos relacionados cos ficheiros.
24. Por que o bash é unha linguaxe de tipo débil?
Debido á falta dun requisito de declaración de tipo de datos ao declarar variables, Bash é unha linguaxe de tipo débil. O tipo dunha variable está determinado polo seu valor actual e trátase como unha cadea en Bash.
O comando declare pódese usar para definir variables de Bash.
Non obstante, as posibilidades de definir tipos de datos están restrinxidas e non abarcan todos os tipos de datos. Por exemplo, o comando declare non se pode usar co tipo de datos flotante.
25. Canto tempo ten unha variable nun script de shell?
Unha variable nun script de shell ten unha duración de só ata a conclusión da execución.
26. Nomea o comando de substitución de eco.
O comando tput é unha alternativa a echo. Podemos usar este comando para controlar como se mostra a saída. Ademais, independentemente do tamaño da pantalla, os scripts de shell poden realizar cousas como subliñar e centrar o texto.
27. Definir IFS
IFS significa Internal Field Separator. É unha variable do sistema co valor predeterminado de espazo, tab, seguido dunha nova liña. IFS indica onde remata un campo ou palabra nunha liña e comeza outro.
28. É posible executar numerosos scripts nun Shell?
Si, pódense executar moitos scripts nun Shell. Podes chamar un script desde outro executando varios scripts. Para facelo, debes especificar o nome do script que queres invocar.
29. Cales son os moitos modos dos editores vi?
- Modo de comando: este é o modo no que comeza.
- Modo de edición: esta opción permítelle realizar edicións posteriores.
- Neste modo, interactúas con vi e dáslle instrucións para procesar.
30. Cal é a diferenza entre $! e $$?
$! Mostra o ID do proceso que pasou recentemente a un segundo plano.
$$ devolve o ID do proceso en execución.
31. Que significa $#?
$# normalmente contén o número de argumentos, aínda que isto pode ser diferente para as funcións. Simplemente descrito, utilizouse para rexistrar o número de parámetros de liña de comandos proporcionados a un script de shell.
32. Nomee o comando utilizado para crear a copia de seguridade.
O comando tar úsase para crear unha copia de seguridade. Tar é unha abreviatura de arquivo en cinta e úsase para crear copias de seguridade que empregan tar, gzip e bzip. Este comando pode gardar e restaurar ficheiros desde e a unha cinta.
Xeralmente, os ficheiros e directorios están comprimidos en tarballs, que son ficheiros de arquivo. É unha das instrucións máis utilizadas por este motivo. Ademais, o tarball é simplemente transferible dun servidor a outro.
33. Cando é inadecuado utilizar Shell Scripting?
Non debemos utilizar Shell Scripting se o traballo é realmente complexo, como construír todo un sistema de procesamento de nóminas.
Non debemos empregar Shell Scripting se o traballo necesita un alto grao de produtividade.
Non debemos utilizar Shell Scripting se o proxecto esixe varias solucións de software.
34. Como te vas conectar a un servidor de bases de datos desde Linux?
Podemos utilizar a utilidade isql incluída co controlador de cliente aberto do seguinte xeito:
35. Cales son os dous ficheiros de comandos crontab?
cron.allow determina que usuarios deben poder usar o comando crontab.
cron.deny, que determina se se lles debe prohibir aos usuarios usar o comando crontab.
36. Cales son as tres proteccións de seguridade UNIX distintas para un ficheiro ou datos?
- Ofrece seguridade a nivel de ficheiros ao conceder dereitos de lectura, escritura e execución aos ficheiros.
- Ofrece aos usuarios un ID de usuario e un contrasinal únicos para a autenticación para que persoas descoñecidas ou non autorizadas non poidan acceder a el.
- Ofrece seguridade por cifrado de ficheiros. Este enfoque permítelle codificar un ficheiro nun formato ilexible. Aínda que se abra un ficheiro, o seu contido non se pode ler ata que se descifra.
37. Explica brevemente o comando sed utilizando un exemplo.
sed é unha abreviatura de editor de fluxos. Utilízase para editar un ficheiro sen o uso dun editor. Utilízase para alterar un fluxo determinado, como unha entrada de ficheiro ou canalización.
38. No shell script, cal é o propósito das ferramentas que veñen co controlador de cliente aberto?
O sistema está conectado unicamente a un servidor de base de datos mediante as ferramentas. Os usuarios están obrigados a realizar unha serie de actividades importantes e necesarias para a programación.
Para a creación de guións, necesítanse máis datos e información, e non sempre é práctico mantelos nun só lugar. Os usuarios que utilicen este enfoque deben garantir unha saída sen erros.
49. Nomea o comando que se debe utilizar para determinar a duración do sistema.
Usando o comando Uptime, pode determinar canto tempo estivo operativo o seu sistema. Tamén están dispoñibles o número de usuarios con sesións activas e a carga típica do sistema durante 1, 5 e 15 minutos.
Tamén pode filtrar a información que se presenta dunha soa vez segundo as eleccións que faga.
40. Fai un guión para engadir numerosos valores.
41. Crea un exemplo de función.
Conclusión
Podes comprender que o shell é principalmente unha interface entre o sistema operativo e o usuario que traduce as instrucións introducidas polo usuario ao sistema operativo ou ao núcleo coa axuda destas preguntas de entrevista de shell-scripting.
Este concepto é frecuentemente crucial no proceso de preparación da entrevista para Enxeñeiros de DevOps e probadores de automatización. Os scripts de shell permiten a creación de scripts de diferentes niveis de complexidade. Os scripts de shell tamén se poden usar para automatizar unha variedade de procesos recorrentes.
Ver Serie de entrevistas de Hashdork para axudar na preparación da entrevista.
Deixe unha resposta