如何写一个shell文件,写一个小脚本

1、新建一个脚本文件:vi demo.sh

2、追加执行权限: chmod u+x demo.sh

3、执行脚本:./demo.sh

4、什么是脚本?把一堆命令放到一个文件里面,然后只需要执行文件就可以。

5、脚本的目的?尽可能的简化我们的操作,让效率更高。

6、test ls  检测该条命令是否成功

7、echo $? 检测上一条命令是否成功  ,打印为0 代表成功,只要不是0都是失败的。

8、test  'a'='a'    >> [[  'a' = 'a'  ]]  equal  = 判断字符串相等

9、[[  -n 'a'  ]]   —— -n 判断字符串的长度不为0

[[  -z 'a'  ]]   —— -n 判断字符串的长度为0

[[  'a' = 'a'  ]]   ——  = 判断字符串相等

[[  'a' != 'a'  ]] ——!=判断两个字符串不等

[[  1 -eq 2  ]] —— -eq判断数字 相等

[[  1 -ge 2  ]] —— -ge判断数字1 大于 等于数字2

[[  1 -gt 2  ]]  —— -gt判断数字1 大于 数字2

[[  1 -le 2  ]]  —— -le判断数字1 小于 等于数字2

[[  1 -lt 2  ]]   —— -lt判断数字1  小于 数字2

9、逻辑运算符

and >>>> -a  ——[[  'a'  =  'a'  -a   'b'  =  'b'   ]]

or   >>>> -o  —— [[  'a'  =  'a'  -o   'b'  =  'b'   ]]

if的时候[  ]要去掉一个

10、if语句----登录小练习

vim login.sh

#!/bin/bash

read -p '请输入用户名'  username

read -p '请输入密码'  passwd

user='wuzm'

password='123456'

if  [  $username  =  $user  -a   $passwd  =  $password   ];then

      echo  "欢迎wuzm!"

else

      echo "密码错误"

fi

增加执行权限:chmod u+x login.sh

执行脚本:./login.sh

Linux之 if命令——简单的shell文件的更多相关文章

  1. linux:使用comm命令比较两个文件:交集、差

    linux:使用comm命令比较两个文件:交集.差 comm命令可以按行比较两个排序好的文件,输出有3列:第一列是file1独有的.第二列是file2独有的,第三列是两者都有的,简单语法如下:NAME ...

  2. Linux下面使用命令如何运行.sh文件的两种解决办法

    Linux下面用命令如何运行.sh文件的方法,有两种方法: 一.直接./加上文件名.sh,如运行hello.sh为./hello.sh[hello.sh必须有x权限] 二.直接sh 加上文件名.sh, ...

  3. 如何在linux下编写一个简单的Shell脚本程序

    在了解了linux终端和其搭配的基本Shell(默认为bash)的基础下,我们就可以在终端中用vi/vim编辑器编写一个shell的脚本程序了 Shell既为一种命令解释解释工具,又是一种脚本编程语言 ...

  4. Linux下用命令来执行kettle文件资源库的文件ktr与kjb的方法

    转载地址: https://blog.csdn.net/zuolovefu/article/details/78083445 1. 准备工作 一个简单的job,一个简单的trans. trans:读取 ...

  5. Linux——模拟实现一个简单的shell(带重定向)

    进程的相关知识是操作系统一个重要的模块.在理解进程概念同时,还需了解如何控制进程.对于进程控制,通常分成1.进程创建  (fork函数) 2.进程等待(wait系列) 3.进程替换(exec系列) 4 ...

  6. php多进程结合Linux利器split命令实现把大文件分批高效处理

    有时候会遇到这样的需求,比如log日志文件,这个文件很大,甚至上百M,需要把所有的日志拿来做统计,这时候我们如果用单进程来处理,效率会很慢.如果我们想要快速完成这项需求,我们可以利用Linux的一个利 ...

  7. Linux 使用Crontab设置定时调用Shell文件

    定时执行步骤: 利用crontab来定时执行任务大致有如下两步: 1.编写shell脚本 2.利用crontab加入到定时任务队列 一.如何建立shell脚本 程序必须以下面的行开始(必须方在文件的第 ...

  8. Linux的各种命令(android adb shell)

    win+r 调出运行,输入CMD adb shell 进入手机的控制终端,相当于原生的Linux系统的各种操作. 当提示符为$符号,说明未获得超级管理员权限,输入su,可编程# adb kill-se ...

  9. Linux——权限管理命令简单笔记

    首先linux中的权限分为三种rwx 代表字符 权限 对文件的含义 对目录的含义 r 读权限 可以查看文件 内容 (cat, more, head, tail) 可以列出目录中 的内容 (ls) w ...

随机推荐

  1. 洛谷 - P1217 - 回文质数 - 枚举

    https://www.luogu.org/problemnew/show/P1217 考虑暴力生成所有的回文数然后再判断是不是质数.注意个位的选择实际上只有4种.所以是 $4*10^3*10^3=4 ...

  2. 51nod 1095【映射】

    思路: 利用一个map记录初始的,利用一个map记录排序后的. #include <bits/stdc++.h> using namespace std; map<string,in ...

  3. MongoDb Samus c# Find函数的使用说明

    长活短说, 网上有一些是不对的 比如 Op.GreaterThan(...).LessThan(..) 不能这么用来表示 ( , ) 而应该这么用: var doc = new Document( a ...

  4. bzoj 1076: [SCOI2008]奖励关【状压dp+概率dp】

    设f[i][s]为前i步,选的礼物集合为s的方案数,然而并不会转移-- 看了hzwer的blog,发现要倒着转移,然后答案就是f[1][0] 妙啊 #include<iostream> # ...

  5. hdu1233 还是畅通工程 基础最小生成树

    //克鲁斯卡尔 #include<iostream> #include<algorithm> using namespace std; ; struct node { int ...

  6. css width

    转载:http://blog.csdn.net/dddddz/article/details/8631655

  7. forward和sendRedirect的区别

    部分内容转自:http://blog.csdn.net/zhouysh/article/details/380364和http://blog.csdn.net/frank_jay/article/de ...

  8. 145 Binary Tree Postorder Traversal 二叉树的后序遍历

    给定一棵二叉树,返回其节点值的后序遍历.例如:给定二叉树 [1,null,2,3],   1    \     2    /   3返回 [3,2,1].注意: 递归方法很简单,你可以使用迭代方法来解 ...

  9. css中常见中文字体的英文名称

    曾经看过一些文章,建议CSS中字体应用英文来替代,但一直未引起我重视.最近官网改版,今天同事测试发现Mac的Safari总是显示宋体 → → 修改font-family:"微软雅黑" ...

  10. mysql 三大范式【转载】

    第一范式(1NF,normal format):字段不能再分. 这是字段的原子性.例如:字段“学期时间”:2014-9-1,2015-1-15. 这个字段“学期时间”可以再分为“学期开始时间”,201 ...