if语句应用实例

if语句可以在程序中实现各种逻辑判断。

用if语句判断并显示文件的信息

可以用test命令和相关的参数来判断文件的属性,然后根据判断结果输出文件的信息。

#!/bin/bash

#4.9.sh

if test -w $1 #判断文件是否可写

then echo "writeable"    #可写时输出

else

echo "unwriteable"      #不可写时输出

fi                                   #fi结束if语句

if  test -x $1                   #判断是否可执行

then echo "excuteable"  #可执行时输出

else

echo "unexcuteable"  #不可执行时输出

fi

chomd +x 4.9.sh 给文件添加权限

if语句嵌套实例

#1!/bin/bash

#4.10.sh

if test -z $1      #测试是否输入了文件名

then echo 'please input a file name'   #没有输出文件名则输出文件名则输出提示

else            #有文件名的情况

if test -w $1  #测试文件是否可写

then echo "writeable"

else       #不可写的输出

echo "unwriteable"

fi

if  test  -x $1     #文件是否可以执行

then echo "excuteable"

else

echo "unexcuteable"   #不能执行时的输出

fi

if   #if 语句的结束

for语句

for语句是一种常用的循环语句,实现在一个值列表中的循环功能。

for   变量  in  列表

do

命令1

命令2...

....

done

#!/bin/bash

#4.12.sh for

for char in a s d f g  #开始for循环

do   #循环体

echo $char

done      #结束for循环

当for语句省略后面的in关键字时,将接受输入命令时的参数作为循环变量集。

linux 下 Shell编程(三)的更多相关文章

  1. Linux 下shell 编程学习脚手架

    linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...

  2. Linux下Shell编程

    Linux的shell编程 1.什么是shell? 当一个用户登录Linux系统之后,系统初始化程序init就为每个用户执行一个称为shell(外壳)的程序. shell就是一个命令行解释器,它为用户 ...

  3. linux下shell编程示例-获取进程id

    今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo ...

  4. Linux下shell编程实例

    1. 推断一文件是不是块或字符设备文件.假设是将其复制到 /dev 文件夹下 read -p "input a file:" filename if [ -b $filename ...

  5. linux 下Shell编程(四)

    for循环应用实例 for 循环可以对一个记录集中地数据依次集中地数据依次进行处理. #!/bin/bash #4.13.sh for clear     #看下图区别 for((i=1:i<1 ...

  6. 06 Linux下Shell介绍

    一.概述 每个人在成功登陆Linux后,系统会出现不同的提示符号,例如$,~,#等,然后你就可以开始输入需要的命令.若命令正确,系统就会依据命令的要求来执行,直到注销系统为止,在登陆到注销期间,输入的 ...

  7. .Neter玩转Linux系列之四:Linux下shell介绍以及TCP、IP基础

    基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...

  8. linux 下shell 编写脚本

    linux 下shell 编写脚本: 1.程序结构练习:编写一个脚本,给定一个正整数,计算出这个数所有位的数字之和. 例如:程序给定输入123,那么应该返回1+2+3=6. 2.程序结构练习:编写一个 ...

  9. linux 下 poll 编程

    poll 与 select 很类似,都是对描述符进行遍历,查看是否有描述符就绪.如果有就返回就绪文件描述符的个数将.poll 函数如下: #include <poll.h> int pol ...

随机推荐

  1. centos 7 安装gcc g++

    yum install gcc gcc-c++ over. ps:如果系统报yum命令未找到,退出重新登陆试试root.

  2. oneapm的技术博客(简书),用来追溯群里的讨论,mark

    http://www.jianshu.com/users/572133740c3f/latest_articles

  3. kinect脸部三维数据特征点标签语义具体说明

    非常多零零碎碎的事情,导致非常久没写blog了.face animation的demo做完了也快一个月了.是时候总结总结了. Kinect获得的标识点共用121个.其给的sdk里面也给出了响应的标签. ...

  4. leetcode 解题报告 Word Ladder II

    题目不多说了.见https://oj.leetcode.com/problems/word-ladder-ii/ 这一题我反复修改了两天半.尝试过各种思路,总是报TLE.终于知道这一题为什么是leet ...

  5. STL坑汇总

    1. Q:vector的push_back()方法到底做了些什么? 为什么声明写的是void push_back (const value_type& val); A:的确,乍一看,似乎pus ...

  6. iOS CoreImage之滤镜简单使用

    代码地址如下:http://www.demodashi.com/demo/11605.html 老骥伏枥,志在千里 前记 最近一直在研究图像处理方面,既上一篇iOS Quart2D绘图之UIImage ...

  7. windows上使用的免费连接linux终端xshell6,xftp6下载

    xshell 6 https://www.netsarang.com/download/down_form.html?code=622 xftp 6 https://www.netsarang.com ...

  8. iOS开发-发送邮件(E-mail)方法整理合集(共3种)

    前言:在IOS开发中,有时候我们会需要用到邮件发送的功能.比如,接收用户反馈和程序崩溃通知等等.其实这个功能是很常用的,因为我目前就有发送邮件的开发需求,所以顺便整理下IOS发送邮件的方法. IOS原 ...

  9. Python中json.loads解析包含\n的字符串会出错

    用python中的json.loads解析字符串,失败了. [解决过程] 1.调试了半天,终于发现,如果把其中的: "呵呵加那么多连接啊\n\n这个标准还是不错的\n\n给大家推荐一个更多的 ...

  10. NIO之直接缓冲区与非直接缓冲区

    直接缓冲区与非直接缓冲区的概念 一.非直接缓冲区 1)创建方式 通过 static ByteBuffer allocate(int capacity) 创建的缓冲区,在JVM中内存中创建,在每次调用基 ...