


The vastness of Linux allows people to always present unique content every time. This content is not only beneficial for their career development but also allows them to increase their knowledge. Here, we try to do this, and let our readers judge how effective it can be.
Here, as a supplement to shell scripts, in this article we will answer questions related to Linux Shell from an interview perspective.
1. How to interrupt script execution before the shell script is successfully executed?
Answer: We need to use the exit
command to achieve the scenario described above. exit
When the command is forced to output a non-zero value, the script will report an error and exit. In a Unix shell script, a value of 0 indicates successful execution. Therefore, executing an unquoted exit -1
command before the end of the script will terminate the script.
#!/bin/bash echo "Hello" exit -1 echo "bye"
Save the file and execute.
#!/bin/bash echo "Hello" exit -1 echo "bye"
It can be clearly seen from the above script that the script executes well before the exit -1
command.
2. How to use Linux commands to remove file headers?
Answer: When we need to delete specified lines in a file, the sed
command can be used to solve the problem.
This is the correct command to delete the file header (the first line of the file).
# sed '1 d' file.txt
Well, in fact, the -i
switch built into the sed command can do this job, so there is no need for a redirection character.
# sed -i '1 d' file.txt
3. How do you check the length of a line in a text file?
Answer: sed
The command can also be used to find a certain line in a text file or check its length.
sed -n 'n p' file.txt
can be solved, where n
represents the line number, p
prints out the matching content (to standard output) , this command is usually used with the -n
command line option. So, how to get the length count? Obviously, we need to pipe the output to the wc
command for calculation.
# sed –n 'n p' file.txt | wc –c
To get the length of the fifth line of the text file ‘linuxmi.txt’, run the following command:
# sed -n '5 p' linuxmi.txt | wc -c

4. Can all non-printing characters be viewed on a Linux system? how did you do it?
Answer: Yes. All non-printing characters can be viewed in Linux. To implement the solution mentioned above, we need the help of the vi
editor. How to display non-printing characters in the vi
editor?
Open the vi editor.
First press the [esc] key, and then press :
Enter the command mode of the vi editor.
最后,从 vi 编辑器的命令界面输入set list
命令并执行。
“
注: 这种方式可以查看文本文件中的所有非打印字符,包括 ctrl+m(^M)。
”
5. 假如你是一个员工组的团队领导,为xyz公司工作。公司要求你创建一个**dir_xyz
目录,让该组成员都能在该目录下创建或访问文件,但是除了文件创建者之外的其他人不能删除文件,你会怎么做?**
解答:这真是个有趣的工作方案。好吧,上面所讲的方案,我们需要通过下面的步骤来实施,这简直就是小菜一碟。
# mkdir dir_xyz # chmod g+wx dir_xyz # chmod +t dir_xyz
第一行命令创建了一个目录(dir_xyz),上面的第二行命令让组(g)具有‘写’和‘执行’的权限,而上面的最后一行命令——权限位最后的‘+t’是‘粘滞位’,它用来替换‘x’,表明在这个目录中,文件只能被它们的拥有者、目录的拥有者或者是超级用户root删除。
6. 你能告诉我一个Linux进程经历的各个阶段吗?
解答:一个 Linux 进程在它的一生中,通常经历了四个主要阶段。
这里是Linux进程要经历的四个阶段。
- 等待:Linux进程等待资源。
- 运行:Linux进程当前正在执行中。
- 停止:Linux进程在成功执行后或收到杀死进程信号后停止。
- 僵尸:如果该进程已经结束,但仍然留在进程表中,被称为‘僵尸’。
7. Linux中**cut
命令怎么用?**
解答:cut
是一个很有用的 Linux 命令,当我们要截取文件的指定部分并打印到标准输出,当文本区域以及文件本身很大时,这个命令很有用。
例如,截取txt_linuxmi
文件的前10列。
# cut -c1-10 txt_linuxmi
要截取该文件中的第二,第五和第七列。
# cut -d;-f2 -f5 -f7 txt_linuxmi
8. cmp
和diff
命令的区别是什么?
解答:cmp
和diff
命令用来获取相同的东西,但各有侧重。diff
命令输出为了使两个文件一样而应该做的修改。而‘cmp’命令则将两个文件逐字节对比,并报告第一个不匹配的项。
9. Can the **echo
command be used to replace the ls
command? **
Answer: Yes. The 'ls' command can be replaced with the 'echo' command. The ‘ls’ command lists the directory contents. From the perspective of replacing the above command, we can use ‘echo *’. The output of the two commands is exactly the same.
10. You may have heard of inode. Can you briefly describe the inode?
Answer: inode is a data structure used for file identification on Linux. Each file has a separate inode and a unique inode number on Unix systems.
The above is the detailed content of 10 Interesting Linux Shell Scripts 'Interviews and Answers', Can Experienced Drivers 'Overturn'?. For more information, please follow other related articles on the PHP Chinese website!

linux设备节点是应用程序和设备驱动程序沟通的一个桥梁;设备节点被创建在“/dev”,是连接内核与用户层的枢纽,相当于硬盘的inode一样的东西,记录了硬件设备的位置和信息。设备节点使用户可以与内核进行硬件的沟通,读写设备以及其他的操作。

区别:1、open是UNIX系统调用函数,而fopen是ANSIC标准中的C语言库函数;2、open的移植性没fopen好;3、fopen只能操纵普通正规文件,而open可以操作普通文件、网络套接字等;4、open无缓冲,fopen有缓冲。

端口映射又称端口转发,是指将外部主机的IP地址的端口映射到Intranet中的一台计算机,当用户访问外网IP的这个端口时,服务器自动将请求映射到对应局域网内部的机器上;可以通过使用动态或固定的公共网络IP路由ADSL宽带路由器来实现。

在linux中,eof是自定义终止符,是“END Of File”的缩写;因为是自定义的终止符,所以eof就不是固定的,可以随意的设置别名,linux中按“ctrl+d”就代表eof,eof一般会配合cat命令用于多行文本输出,指文件末尾。

在linux中,可以利用“rpm -qa pcre”命令判断pcre是否安装;rpm命令专门用于管理各项套件,使用该命令后,若结果中出现pcre的版本信息,则表示pcre已经安装,若没有出现版本信息,则表示没有安装pcre。

linux查询mac地址的方法:1、打开系统,在桌面中点击鼠标右键,选择“打开终端”;2、在终端中,执行“ifconfig”命令,查看输出结果,在输出信息第四行中紧跟“ether”单词后的字符串就是mac地址。

在linux中,rpc是远程过程调用的意思,是Reomote Procedure Call的缩写,特指一种隐藏了过程调用时实际通信细节的IPC方法;linux中通过RPC可以充分利用非共享内存的多处理器环境,提高系统资源的利用率。

手机远程linux工具有:1、JuiceSSH,是一款功能强大的安卓SSH客户端应用,可直接对linux服务进行管理;2、Termius,可以利用手机来连接Linux服务器;3、Termux,一个强大的远程终端工具;4、向日葵远程控制等等。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

DVWA
Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.
