1.如何理解shell脚本中第一行#!/bin/sh

#!为特殊的表示符,其后是解释此脚本的shell的路径。此脚本使用/bin/sh进行解释执行。

2.如何向脚本传递参数。

脚本名字 参数1 参数2 ...  例:test.sh wenf girl

test.sh中脚本如下:

#!/bin/sh
echo $ " is a " $
exit

执行的结果是:wenf  is a  girl

总结点:

A:传入脚本的参数分别用$1,$2,...表示传入的第一个,第二个...参数。

$0------脚本的名字。

$#------传递给脚本的总的参数个数

$?------上一句执行代码或者整个shell退出时的情况,正常则为0,异常则是非0

$$------本程序的进程ID号(PID)

$!------上一个命令的PID

$*------传递给程序的所有参数组成的字符串

$@------以“参数1”“参数2”...的形式保存所有的参数

3.命令行直接新建一个文件的方法

总结的方法有:

A:touch 文件名

B: vi 文件名

C nano -w 文件名

另外,比较常用的两个文本编辑器为vim ,emacs

4.如何获取文件的前n行,后n行

获取文件的前n行,head -n 文件名;获取文件的后n行,tail -n 文件名

5如何调试bash脚本

在脚本#!/bin/sh 插入参数-xv ,例:#!/bin/sh -xv

6.如何连接字符串,如何进行整数的相加计算

连接字符串:str3=$str1$str2 ;整数相加:let num3=$num1+$num2

7.如何检查文件系统中是否存在某个文件

#!/bin/sh
if [ -f ./testwenf.sh ]
then
echo "File exists"
fi
exit 0

检查文件系统中是否存在某个目录时:-d 目录名

8.shell脚本中循环语法

for循环:

#!/bin/sh
for i in $(ls)
do
echo item:$i
done
exit

while循环:

#!/bin/sh
counter=
while [ $counter -lt ]
do
echo The counter is $counter
let counter=counter+
done

until循环

#!/bin/sh
counter=
until [ $counter -lt ]
do
echo The counter is $counter
let counter=counter-
done

9.单引号与双引号有什么区别

单引号---当我们不希望把变量转换为值的时候使用它。

双引号---会计算所有变量的值并用值代替。

10.如何只用echo命令获取字符串变量的一部分

echo ${variable:x:y}

x-起始位置

y-长度

variable="My name is Petras, and I am developer."
echo ${variable::} # 会显示 Petras

11.如何在脚本文件中重定向标准输出和标准错误流到log.txt文件中

在脚本中添加 “命令

shell面试题目总结的更多相关文章

  1. PHP面试题目搜集

    搜集这些题目是想在学习PHP方面知识有更感性的认识,单纯看书的话会很容易看后就忘记. 曾经看过数据结构.设计模式.HTTP等方面的书籍,但是基本看完后就是看完了,没有然后了,随着时间的推移,也就渐渐忘 ...

  2. 经典面试题目——250M内存处理10G大小的log文件

    前言 周末逛知乎的时候,看到的一个经典面试题目:http://www.zhihu.com/question/26435483.非常经典的一道分而治之的题目. 题目描写叙述例如以下: 有次面试遇到一个问 ...

  3. C++程序员面试题目总结(涉及C++基础、多线程多进程、网络编程、数据结构与算法)

     说明:C++程序员面试题目总结(涉及C++基础知识.多线程多进程.TCP/IP网络编程.Linux操作.数据结构与算法) 内容来自作者看过的帖子或者看过的文章,个人整理自互联网,如有侵权,请联系作者 ...

  4. linux面试题目—2

    linux面试题目—2 二 选择题 1.关闭linux系统(不重新启动)可使用命令 B . A Ctrl+Alt+Del B halt C shutdown -r now D reboot 2.实现从 ...

  5. linux面试题目--1

    Linux面试题目 填空题1. 在Linux系统中,以 (文件)方式访问设备 .2. Linux内核引导时,从文件/etc/fstab 中读取要加载的文件系统.3. Linux文件系统中每个文件用i节 ...

  6. BAT网络运维常见面试题目总结

    BAT常见面试题目总结 Author:Danbo 2015-7-11 TCP/IP详解鸟哥Linux的书网络安全ping的原理make的过程文件有哪些类型各种Linux发行版的区别.有关suid的作用 ...

  7. java常见面试题目(一)

    在大四实习阶段,秋招的时候,面试了很多家公司,总结常见的java面试题目:(答案可以自己百度) 1.你所用oracle的版本号是多少? 2.tomcat修改8080端口号的配置文件是哪个? 3.myb ...

  8. HTML/CS3相关面试题目

    一.HTML/CS3基本面试题目. 1. 常用那几种浏览器测试? 1.1浏览器:IE,Chrome(谷歌),FireFox(火狐),Safari(苹果计算机的最新操作系统Mac OS X中的浏览器,使 ...

  9. 总结CSS面试题目的考察点及常见布局问题整理

    整理网上流传的若干份面试题目,突发奇想,总结关于CSS面试题目的考察点,发现问题大多围绕几个属性和几种题目,水平有限,仅供参考. 写这个博文内心有种莫名奇妙的自我谴责感,实在不应该把面试层叠样式“应试 ...

随机推荐

  1. Sql Server 中锁的概念

    锁的概述 一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏 ...

  2. 工欲善其事-Maven介绍与使用

    Maven是什么? Maven是一个项目管理和综合工具.Maven提供了开发人员构建一个完整的生命周期框架.开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期. 在 ...

  3. Jetty使用教程(一)——开始使用Jetty

    一.Jetty简介 1.1 什么是Jetty Jetty是一个提供HHTP服务器.HTTP客户端和javax.servlet容器的开源项目.   这个入门教程分为五个部分: 第一部分部分重点介绍如何使 ...

  4. CozyRSS开发记录5-订阅列表栏里的项

    CozyRSS开发记录5-订阅列表栏里的项 1.订阅列表栏里的项的原型图 这里列表项依然参考傲游的RSS阅读器,以后可能会微调. 2.使用ControlTemplate来定制ListBoxItem 给 ...

  5. 浏览器-08 chromium 渲染2

    Chromium 硬件加速合成 一个网页通常可以包

  6. 在android studio 中使用applicationid的问题

    现在我需要对项目app的某个功能做性能测试,主要测试耗电量的多少. 1.我想到的方式是,我需要在同一台手机测试,同一个应用,需要安装在手机两次,第二次安装不覆盖第一次的安装. 在android stu ...

  7. java-集合4

    浏览以下内容前,请点击并阅读 声明 对象排序 一个List对象中如果元素类型为String,则其按字母表顺序排序,而如果元素类型为Date,则按照年代排序,那如何判断元素的排序呢?String和Dat ...

  8. 【BFS】POJ 3278

    POJ 3278 Catch That Cow 题目:你要去抓一头牛,给出你所在的坐标和牛所在的坐标,移动方式有两种:要么前一步或者后一步,要么移动到现在所在坐标的两倍,两种方式都要花费一分钟,问你最 ...

  9. node.js中module.export与export的区别。

    对module.exports和exports的一些理解 可能是有史以来最简单通俗易懂的有关Module.exports和exports区别的文章了. exports = module.exports ...

  10. MVC原理

       C代表Controller,负责用户界面和业务逻辑层的通信控制,一方面解释来自用户界面的输入,识别用户动作(如点击按钮等),调用相应Model中的方法, 另一方面处理来自Model的事件和返回的 ...