当前位置:首页>劳务> 正文内容

linux软件工程师(搞懂Linux)-郑州富士康招聘(linux开发程序员招聘)

2年前(2023-01-07)劳务132
今天给各位分享linux软件工程师(搞懂Linux)的知识,其中也会对linux软件工程师(搞懂Linux)进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,如果有不同的见解与看法,请积极在评论区留言,现在开始进入正题!

作为一名IT工程师,尤其是Linux软件工程师,shell脚本的编写是必不可少的技能。面试中时常会遇到shell方面的提问,那么面试官会问什么呢?本篇我就带来常见的提问及解答。

引言:身边不少shell学习者,在刚开始学习shell总喜欢玩些花活,基本知识不扎实。其实在工作中没有那么多花活,工作中更多要求的是解决思路,不是说写个贪吃蛇这类小游戏就可以了,而良好的解决思路需要工作的磨练。刚开始,我们还是要扎实基础,因为面试官不会问你shell怎么实现贪吃蛇的。

写脚本中你?

什么是Shell脚本及如何查看你用的Shell

不用那么高大上的理解,Shell脚本就是一个文本文件,什么文本文件呢?包含Shell命令及代码块的文本文件,帮助我们有序的处理一些事情。如何查看自己用的是哪一个Shell解释器呢?如下:

# 终端输入
echo $SHELL

“#! /bin/bash”什么用途

我们都知道Shell解释器有很多种,具体有什么就不多少了。这句话就是指定Shell解释器去解释我们的脚本。其实,不带这行也是可以的,脚本就可以直接执行了,当然权限要给够,它会按照Linux系统默认的解释器去解释。当然,我们也可以指定其他解释器去解释它。

# 如下两种执行方式
./file
/bin/bash file

变量分类

我的总结有两种分类。第一种是按照变量值分为普通变量、命令变量,第二种是按照作用域分为局部变量、全局变量、环境变量。演示如下:

# 普通变量和命令变量
Var_1="shell"
Var_2=`ls`
Var_3=$(ls)

#局部变量、全局变量和环境变量
Var_4="shell"  #函数外部
local Var_5="shell" #函数内部局部变量可覆盖同名全局变量
echo $SHELL #这个SHELL就是环境变量

标准错误、标准输出重定向到日志文件里

重定向操作其实没啥,我们用的最多的就是输出重定向,及标准输出、标准错误重定向到文件里。操作很简单,如下所示:

/bin/bash shell_file  >output_file 2>&1
/bin/bash shell_file &>output_file

$?是什么意思

Shell执行完毕每个命令都会有一个返回值,这个返回值就是用$?去接收。一般$?等于0则表示上个命令执行成功,否则就是失败,具体可查看日志文件或者标准输出。所示我们会用这个$?去做一些逻辑判断,去执行不同的代码。

VAR=`ls`
if [ ${VAR} -ne 0 ];then
	代码1
 else
   	代码2
 fi

break的作用

这个就通用理解了,跟C语言一样,在循环中,遇到条件,我们可以使用break跳出循环去执行下段代码。当然,continue还是继续新的循环,跳过了循环块中的后续代码。

for循环使用方式

这个跟C语言有点区别,有两种方式去操作,如下所示:

for 变量名 in 变量取值列表
do
   执行语句
done

for x in $(seq 2) 
do
	echo $x
done
	
for((exp1;exp2;exp3))
do
   执行语句
done

for((x=1;x<3;x++))
do
	echo $x
done

Shell内置特殊变量

这个是Shell独一无二的。$0表示脚本名,$1表示脚本的第一个命令行参数...$9表示脚本的第九个命令行参数,大于10个参数的表示则用${10...},获取命令行参数个数则用$#,获取命令行参数信息则用$*。

测试表达式

有四种方式:test、[]、[[]]、(())。但是使用方式略有区别,我们要做的就是记着运算符的使用方式以及边界空格问题,一般新手会在这里“入坑”。如下图所示:

测试表达式{test、[]、[[]]、(())}使用区别

这里流程控制语句就说了一个for循环,当然还有其它也是常用的,都可以去掌握一下。基础知识其实也就这么些,这些掌握了牢固,日常工作需求还是可以完成的。


喜欢的点赞支持一下,谢谢!

经过以上对linux软件工程师(搞懂Linux)的分享介绍,相信你对linux软件工程师(搞懂Linux)有了大概的了解,想知道更多关于知识,关注观澜富士康正式工普工招聘,我们将持续为您分享!

扫描二维码推送至手机访问。

版权声明:本文由网友投稿发布,本网站仅提供存储空间服务,如侵犯了您的权利请立即联系我们进行删除。

本文链接:http://www.25z.cn/laowu/147298.html

标签:命令