返回顶部
首页 > 资讯 > 服务器 >5个实用的shell脚本面试题和答案
  • 960
分享到

5个实用的shell脚本面试题和答案

脚本面试题答案 2022-06-04 21:06:50 960人浏览 八月长安
摘要

这边提到的5个面试问题,延续之前的有关linux面试问题和答案。如果你是Tecmint的读者,你的支持我非常感谢。 1. 写一个shell脚本来得到当前的日期,时间,用户名和当前工作目录。 答案 : 输出用

这边提到的5个面试问题,延续之前的有关linux面试问题和答案。如果你是Tecmint的读者,你的支持我非常感谢。

1. 写一个shell脚本来得到当前的日期,时间,用户名和当前工作目录。

答案 : 输出用户名,当前日期和时间,以及当前工作目录的命令就是logname,date,who i am和pwd。

现在,创建一个名为userstats.sh文件,将下面的代码添加到它。

#!/bin/bash 

echo "Hello, $LOGNAME" 

echo "Current date is `date`" 

echo "User is `who i am`" 

echo "Current directory `pwd`"

给它添加执行权限,并且执行他。
# chmod 755 userstats.sh 

# ./userstats.sh

样例输出

Hello, avi 

Current date is Sat Jun  7 13:05:29 IST 2014 

User is avi      pts/0        2014-06-07 11:59 (:0) 

Current directory /home/avi/Desktop

2.写一个shell脚本,进行两个数字的相加,如果没有输入参数就输出错误信息和一行使用说明

答案 : 下面是简单的shell脚本以及描述,如果没有命令行参数,它会抛出错误与如何使用脚本的说明。

再创建一个名为twonumbers.sh文件和下面的内容添加到文件里。

#!/bin/bash 

# The Shebang

 

if [ $# -ne 2 ] 

# If two Inputs are not received from Standard Input

 

then 

# then execute the below statements

 

    echo "Usage - $0   x    y" 

    # print on standard output, how-to use the script (Usage - ./1.sh   x    y )

 

    echo "        Where x and y are two nos for which I will print sum" 

    # print on standard output, “Where x and y are two nos for which I will print sum ”

 

    exit 1 

    # Leave shell in Error Stage and before the task was successfully carried out.

 

fi 

# End of the if Statement.

 

    echo "Sum of $1 and $2 is `expr $1 + $2`"

    # If the above condition was false and user Entered two numbers as a command Line Argument,   

       it will show the sum of the entered numbers.

给他添加可执行权限,并且执行。

# chmod 755 two-numbers.sh

情形一: 未输入两个数字作为命令行参数运行脚本,你将得到下面的输出。

样例输出

# ./two-numbers.sh

 

Usage - ./two-numbers.sh   x    y 

        Where x and y are two nos for which I will print sum

情形二: 当数字存在时,你会得到如图所示的结果。
$ ./two-numbers.sh 4 5 

 

Sum of 4 and 5 is 9

因此,上述shell脚本满足了问题的要求。

3.你需要打印一个给定的数字的反序,如输入10572,输出27501,如果没有输入数据,应该抛出错误和使用脚本说明。在此之前,告诉我你需要在这里使用的算法

算法

1.输入的数字为n
2.赋值 rev=0, sd=0 (反向和单个数字设置为0)
3.n % 10, 将得到最左边的数字
4.反向数字可以用这个方法生成 rev * 10 + sd
5.对输入数字进行右位移操作(除以10)
6.如果n > 0, 进入第三步,否则进行第七步
7.输出rev

现在,创建一个名为`numbers.sh`文件,并添加以下代码。

#!/bin/bash 

if [ $# -ne 1 ] 

then 

    echo "Usage: $0   number" 

    echo "       I will find reverse of given number" 

    echo "       For eg. $0 0123, I will print 3210" 

    exit 1 

fi 

 

n=$1 

rev=0 

sd=0 

 

while [ $n -gt 0 ] 

do 

    sd=`expr $n % 10` 

    rev=`expr $rev * 10  + $sd` 

    n=`expr $n / 10` 

done 

    echo  "Reverse number is $rev"

授予对文件的执行权限,并运行如下所示的脚本。

# chmod 755 numbers.h

情形一: 当输入不包含命令行参数,你将得到下面的输出。

样例输出

./numbers.sh

 

Usage: ./numbers.sh  number 

       I will find reverse of given number 

       For eg. ./2.sh 123, I will print 321

情形二: 正常输入

$ ./numbers.sh 10572 

 

Reverse number is 27501

上面的脚本非常完美,输出正是我们需要的。

4. 你应该直接用终端,而不是依靠任何shell脚本来进行实数计算。你会怎么做(比如实数7.56+2.453)?
答案 : 我们需要用如下所述的特殊方式使用bc命令。将7.56+2.453作为输入通过管道进入bc中。

$ echo 7.56 + 2.453 | bc

 

10.013

5. 你需要给出圆周率的值,精度为小数点后100位,什么是最简单的方法。

答案 : 找圆周率的值最简单的方法,我们只是需要发出以下命令。

# pi 100 

 

3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067

很明显!安装我们必须有包pi。只用一个apt或yum命令,就能获得所需的软件包,同时用最简单方法来实现这个需求。

--结束END--

本文标题: 5个实用的shell脚本面试题和答案

本文链接: https://lsjlt.com/news/17751.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 5个实用的shell脚本面试题和答案
    这边提到的5个面试问题,延续之前的有关Linux面试问题和答案。如果你是Tecmint的读者,你的支持我非常感谢。 1. 写一个shell脚本来得到当前的日期,时间,用户名和当前工作目录。 答案 : 输出用...
    99+
    2022-06-04
    脚本 面试题 答案
  • 有哪些实用的shell脚本面试题
    本篇内容介绍了“有哪些实用的shell脚本面试题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 写一个shell脚本来得到当前的日期,时...
    99+
    2023-06-09
  • 91 个常见的 Laravel 面试题和答案
    以下是经常问到的 Laravel 和 PHP 相关的面试问题,以便菜鸟以及有经验的应聘者找到合适的工作。1) 什么是 Laravel Laravel是一个开源的、广泛使用的PHP框架。该平台主要用于利用MVC架构模式开发web应用程序。La...
    99+
    2023-05-12
    Laravel 面试 答案 工作
  • 15个Java线程并发面试题和答案
    1. 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行?这个线程面试题通常在第一轮面试或电话面试时被问到,这道多线程问题为了测试面试者是否熟悉 join 方法的概念。答案也非常简...
    99+
    2018-09-09
    java面试题 Java
  • 常见的Shell脚本面试题有哪些
    这篇文章主要介绍常见的Shell脚本面试题有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Shell脚本是什么、它是必需的吗答:一个Shell脚本是一个文本文件,包含一个或多个命令。作为系统管理员,我们经常需要使...
    99+
    2023-06-04
  • Linux Shell脚本面试的题目有哪些
    本篇内容介绍了“Linux Shell脚本面试的题目有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Q:1 Shell脚本是什么、它是必...
    99+
    2023-06-09
  • 面试前的准备工作:PHP Shell和Apache相关问题的答案。
    面试前的准备工作:PHP Shell和Apache相关问题的答案 在准备 PHP 和 Apache 相关面试时,你可能会遇到一些关于 PHP Shell 和 Apache 的问题。为了让你更好地准备面试,本文将介绍一些常见的 PHP She...
    99+
    2023-11-04
    shell 面试 apache
  • 最新的五个PHP+Swoole/Go的面试题(附答案)
    本篇文章给大家带来了关于PHP面试的相关知识,其中主要记录了7个PHP、Swoole、Go、Workerman有关的面试问题,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。一、Swoole协程的原理Swoole 和 Go 都支持协程,它...
    99+
    2023-05-14
    后端 PHP
  • 分享9个实战及面试常用Linux Shell脚本编写
    注意事项 1)开头加解释器:#!/bin/bash 2)语法缩进,使用四个空格;多加注释说明。 3)命名建议规则:变量名大写、局部变量小写,函数名小写,名字体现出实际作用。 4)默认变量是全局的,在函数中变量local指...
    99+
    2022-06-04
    shell 脚本编写 linux shell 脚本
  • Python实现考试自动答题的脚本分享
    目录导语一、准备环境二、代码展示 三、效果展示导语 对于新手而言,掌握好方向盘的打法非常重要,关系到我们能否顺利通过驾考,拿到驾照。而开车时方向盘又是最重要的,握好方向盘等...
    99+
    2023-03-19
    Python实现考试自动答题 Python考试自动答题 Python自动答题
  • 【吐血整理】40+个PHP面试题附答案(实战经验)
    本篇文章给大家总结了40+个PHP面试题大全及答案。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。1、什么事面向对象?主要特征是什么?面向对象是程序的一种设计方式,它利于提高程序的重用性,使程序结构更加清晰。主要特征:封装...
    99+
    2022-07-01
    php面试题
  • 8个实用的Shell脚本分享
    几个Shell脚本的例子,觉得还不错。 【例子:001】判断输入为数字,字符或其他 #!/bin/bash read -p "Enter a number or string here:" inpu...
    99+
    2022-06-04
    脚本 Shell
  • 详解Shell脚本中^M的问题和解决方案
    目录^M 是什么?本质原因常用工具在开发过程中,有时候不小心将Windows本地创建的shell脚本(以 .sh 结尾的脚本),传到linux系统中,通过 vi或者view命令查看文件时,发现在末尾发现出现了很多^M字符...
    99+
    2022-06-05
    Shell^M问题 Shell^M
  • PHP Shell和Apache:如何在面试中回答最常见的问题?
    在面试中,PHP Shell和Apache是两个常见的话题。这两个技术在PHP开发中扮演着重要的角色。在这篇文章中,我们将介绍如何回答面试官最常见的关于PHP Shell和Apache的问题。 PHP Shell 是一个命令行工具,它允许您...
    99+
    2023-11-04
    shell 面试 apache
  • 你是否知道这些Python和Git面试问题的答案?
    Python和Git是现代开发中最常用的工具之一,因此在技术面试中,面试官通常会问一些相关问题。这篇文章将介绍一些常见的Python和Git面试问题,并提供相应的答案和演示代码。 Python面试问题 Python的GIL是什么?它对Py...
    99+
    2023-08-03
    numy git 面试
  • 非常实用的23个Shell脚本实例
    shell脚本是帮助程序员和系统管理员完成费时费力的枯燥工作的利器,是与计算机交互并管理文件和系统操作的有效方式。区区几行代码,就可以让计算机接近按照你的意图行事。 为大家整理了23个实例,通过23个实战经典脚本实例,...
    99+
    2022-06-04
    Shell脚本实例 Shell实用脚本
  • Java面试中不可错过的Spring和Unix问题及其答案!
    在Java面试中,Spring和Unix是两个非常重要的话题,因为它们分别代表了Java开发中的关键框架和操作系统。在这篇文章中,我们将讨论一些Java面试中不可错过的Spring和Unix问题及其答案,以帮助您在面试中更好地表现自己。 ...
    99+
    2023-09-16
    面试 spring unix
  • 11 个非常实用的 Python 和 Shell 拿来就用脚本实例!
    Python 脚本部分实例:企业微信告警、FTP 客户端、SSH 客户端、Saltstack 客户端、vCenter 客户端、获取域名 ssl 证书过期时间、发送今天的天气预报以及未来的天气趋势图;Shell 脚本部分实例:SVN 完整备份...
    99+
    2023-05-14
    Python shell
  • 有哪些实用的Python和Shell脚本
    今天小编给大家分享一下有哪些实用的Python和Shell脚本的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Python 脚...
    99+
    2023-07-06
  • Nodejs中调用系统命令、Shell脚本和Python脚本的方法和实例
    每种语言都有自己的优势,互相结合起来各取所长程序执行起来效率更高或者说哪种实现方式较简单就用哪个,nodejs是利用子进程来调用系统命令或者文件,文档见http://nodejs.org/api/child...
    99+
    2022-06-04
    脚本 实例 命令
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作