Shell面试题总结

记录一下,面试背问到的shell的相关面试题。

1.shell中的加法实现方式

这里写三种方式拿5+3举例

result=$((5+3))
result=expr 5+3
result=echo 5+3 |bc

2.shell判断文件是否存在的方式

也是三种

  • 使用test命令
if test -f 文件路径;thenecho "文件存在"
elseecho "文件不存在"
fi
  • 使用方括号[]
if [ -f 文件路径 ];thenecho "文件存在"
elseecho "文件不存在"
fi
  • 使用-e判断,适用于文件和目录
if [ -e 文件路径 ];thenecho "文件存在"
elseecho "文件不存在"
fi

3.shell脚本执行的几种方式

  • 绝对路径/相对路径执行执行:
--绝对路径
user/test/test.sh
--相对路径
./test.sh

这里有一点需要注意,新创建的脚本,默认是没有x执行权限的,需要给它用 chmod +x test.sh的方式,添加执行权限。

  • sh/bash执行方式
sh test.sh
bash test.sh

这种方式不需要手动给脚本添加x执行权限,甚至都不需要在脚本首行声明脚本解释器类型,因为脚本是被当做该命令的参数使用的。

  • .(空格)脚本名
--注意点后面是有空格的
. test.sh

这方式不需要单独添加x执行权限,权限继承于bash。

4.source执行(主要用于生效配置文件)

source test.sh

继承的是/bin/bash的权限,这种执行方式通常用于重新加载修改后的配置文件。
那么这么多执行方式,有什么区别呢?
.空格和source的运行方式,是shell的内建命令,在当前shell中执行,脚本中的赋值会影响当前shell,因此实际生产环境的开发,需要慎重使用。
路径执行,bash/sh的执行方式,会创建一个shell的子进程,执行完后,子进程关闭。

5. find,grep,locate有什么区别

  • find
    查找文件命令,搜索的是文件/目录本身,在不指定具体的目录的情况下,会对整个系统进行遍历。因此find是一个是非耗时,耗资源的命令,因此在使用时需要注意:
    1.不要在系统比较繁忙的时候使用
    2.尽量在最小的搜索范围内使用。

  • grep
    和find查找文件本身不同,grep是搜索文件里面的内容,会通过一个返回值来返回当前的搜索状态。搜索成功,返回0,不成功返回1,文件不存在,返回2。

  • locate
    用来查找文件,功能上和find是一样的,和find不同的是,locate不是对系统目录的遍历,而是在数据库中查询。
    数据库地址为:/var/lib/mlocate/mlocate.db ,该数据库有Linux创建,存储本地所有的文件信息,并每天更新一次。
    这里需要注意的一点是,如果是新创建的文件,由于数据库没有更新的原因,会出现找不到的问题。此时可以选择手动update一下数据库,再查询。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625778.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P3817 小A的糖果

# 小A的糖果 ## 题目描述 小 A 有 $n$ 个糖果盒,第 $i$ 个盒中有 $a_i$ 颗糖果。 小 A 每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任意两个相邻的盒子中糖的个数之和都不大于 $x$,至少得吃掉几颗糖。 ## 输入格式 输入…

腾讯云服务器定价_云服务器价格_云服务器计费模式

腾讯云服务器租用价格表:轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年,540元三年、2核4G5M带宽218元一年,2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月,云服务器CVM S5实例2核2G配置280.8元一年…

创新与竞争:Facebook如何在社交媒体市场站稳脚跟

社交媒体市场一直都是激烈的竞争场地,而Facebook凭借其创新的战略一直站稳脚跟,不断引领行业潮流。本文将深入探讨Facebook是如何通过创新与竞争策略,在社交媒体市场中牢牢占据领导地位的。 多元化产品布局 Facebook并非只是一家单一产品的公…

[Java刷算法]牛客—剑指offer第一天

🧛‍♂️个人主页:杯咖啡💡进步是今天的活动,明天的保证!✨目前正在学习:SSM框架,算法刷题🙌牛客网,刷算法过面试的神级网站,用牛客你也牛。 👉免费注册和我一…

我成为开源贡献者的原因竟然是做MySql-CDC数据同步

今年下半年机缘巧合下公司决定搭建自己的数据中台,中台的建设势必少不了数据集成。首先面临的就是数据集成技术选型的问题,按照社区活跃度、数据源适配性、同步效率等要求对市面上几个成熟度较高的开源引擎进行了深度调研。 最终经过内部讨论决定用Apac…

云服务器部署Stable Diffusion Webui从0到1总结:反复重启+循环debug

文章目录 在学校服务器部署Stable Diffusion Webui(一)准备工作(二)环境配置(三)git拉取项目到本地(四)运行项目 遇到的问题:(一)使用git clone时…

JAVAEE初阶 多线程进阶(二)

多线程进阶相关知识点 一.CAS1.1 CAS的原子类1.2 实现自旋锁1.3CAS中的ABA问题1.4 ABA问题的解决 二. callable接口三.reentrantLock3.1 reentrantLock与synchronized区别 四.信息量 semaphore五. CountDownLatch六. concurrentHashMap6.1 concurrentHashMap的优点 一.CAS CAS …

如何解决csgo搬砖饰品买了跌价的问题

大家好,我是阿阳。 经常有粉丝问:近期是该买还是该抛,每次买了就跌,抛了就涨,太揪心了。 在这聊聊阿阳自己对这个问题的看法,首先大家都知道csgo游戏搬砖从饰品持有时间长短,可以分为两类&…

【Python学习】Python学习20- 面向对象(1)

目录 【Python学习】Python学习20- 面向对象(1) 前言面向对象技术简介类的创建实例:创建实例对象访问属性 Python内置类属性完整代码输出 参考 文章所属专区 Python学习 前言 本章节主要说明Python的面向对象的处理。Python从设计之初就已经…

【Python学习】Python学习19- 异常处理

目录 【Python学习】Python学习19- 异常处理 前言python标准异常异常处理带异常类型语法不带异常类型语法使用except而带多种异常类型try-finally 语句触发异常 参考 文章所属专区 Python学习 前言 本章节主要说明Python的异常处理。 python标准异常 BaseException 所有异常…

中级Python面试问题

文章目录 专栏导读1、xrange 和 range 函数有什么区别?2、什么是字典理解?举个例子3、元组理解吗?如果是,怎么做,如果不是,为什么?4、 列表和元组的区别?5、浅拷贝和深拷贝有什么区别…

微信小程序上传并显示图片

实现效果&#xff1a; 上传前显示&#xff1a; 点击后可上传&#xff0c;上传后显示&#xff1a; 源代码&#xff1a; .wxml <view class"{{company_logo_src?blank-area:}}" style"position:absolute;top:30rpx;right:30rpx;height:100rpx;width:100rp…

在vue中,切换页面之后如何关闭定时器

在vue中&#xff0c;使用了element-ui的框架&#xff0c;点击左侧切换内部页面。 有些页面使用了定时器&#xff0c;在其换到其他页面的时候&#xff0c;希望能够关闭这些定期请求和复杂操作。 那么&#xff0c;切换页面之后如何关闭定时器&#xff1f;vue的创建流程中没找到能…

OWASP漏洞原理启航(第一课)

OWASP Top 10 2021 介紹 漏洞原理启航介绍 OWASP 定义&#xff1a; AI介绍 OWASP (开放Web应用程序和安全项目) 是一个全球性的社区&#xff0c;致力于提供关于Web应用程序安全性的信息、教育和支持。OWASP是一个非盈利组织&#xff0c;由志愿者驱动&#xff0c;旨在提高Web应…

从“精益思想“看机器人的开发与应用:一场科技与效率的完美融合

在科技飞速发展的今天&#xff0c;机器人已经深入到我们的生活和工作之中&#xff0c;成为了提高效率、提升质量的重要工具。然而&#xff0c;如何让机器人的开发和利用更有效率、更精细&#xff0c;这是摆在我们面前的一道难题。此时&#xff0c;"精益思想"的出现&a…

记ubuntu2004通过NetworkManager修改网络的优先级

这里写自定义目录标题 前言步骤 前言 起因在于万恶的校园网&#xff0c;突然台式有线死活没法认证&#xff08;感觉是IP冲突了&#xff1f;另外一台电脑同样的系统就没有问题&#xff0c;连路由器WIFI也是可以的&#xff0c;路由器设置的是桥接模式&#xff0c;有没有大佬提供…

不分青红皂白,美杜莎勒索软件攻击慈善饮用水机构Water for People

据The Record网站消息&#xff0c;1月11日&#xff0c;勒索软件组织美杜莎&#xff08;Medusa&#xff09;在其暗网受害名单网站上列出了 Water for People——一家专为贫困地区提供清洁饮用水的非盈利组织。 美杜莎向该组织索要30万美元赎金&#xff0c;否则将公布被盗信息。W…

表单验证 ---- 在Vue2中使用ElementUI进行表单验证

目录 前言 给表单绑定对应属性 在data中定义数据对象和表单的定义规则 与数据对象双向绑定 对整个表单进行验证 前言 在做项目时&#xff0c;对于表单进行验证是我们必不可少的 例如 搭建一个基本的登录界面 <div class"form"><h1>登录</h1>&…

拼图小游戏(实现游戏主界面)(未连接数据库)

注释&#xff1a; 基于IDEA&#xff0c;创建窗体进行游戏 默认的用户名和密码为&#xff1a;zhangsan,123 lisi,1234 App界面 package marchwho.ui;public class App {public static void main(String[] args) {//登录的窗体new LogInJFrame();//注册的窗体// new Registe…

操作系统复习 九-十二 章

操作系统复习 九-十二 章 文章目录 操作系统复习 九-十二 章第九章 单处理器调度调度的概念调度的时机、切换与过程进程调度方式调度的基本准则进程的挂起态与七状态模型典型的调度算法 第十一章 I/O管理和磁盘调度I/O 设备I/O控制方式I/O子系统的层次结构IO子系统概述IO调度概…