文档章节

shell基本操作

人情世故
 人情世故
发布于 2016/05/24 19:25
字数 532
阅读 92
收藏 4

**- 执行脚本 ./1.sh

  •     sh 1.sh
    
  •     . 1.sh
    
  •     source 1.sh
    
  • 重定向 < 重定向输如 示例:passwd --stdin xiaohan < pass.txt
  •    > 重定向输出 示例:cat /etc/passwd > /root/passwd.txt
    
  •    >>追加重定向 示例:cat /etc/passwd >> /root/passwd.txt
    
  •    2>错误重定向 
    
  •    2>>最佳错误重定向
    
  •    &>混合重定向
    
  • 变量 a="会被解析$b"
  •    a='不会被解析$b'
    
  •    a='cat /etc/passwd' 或a=$(cat /etc/passwd) 当变量是值是一个命令的输出结果时使用
    
  •    read -p a  交互式给变量赋值 示例: read -p "请输入数字"
    
  •    环境变量 USER 当前用户
    
  •            PATH 命令搜索路径
    
  •            HOME 宿主目录
    
  •            PWD  工作目录
    
  •    位置变量 $? 执行命令的返回结果 0 true 非0 false
    
  •            $# 参数个数
    
  •            $* $1表示第一个参数,$2第二个 $*表示所有位置参数的内容
    
  •            $0 表示当前程序脚本的名称
    
  •    全局变量 export 变量名
    
  •    变量运算 expr $a + $b 加 
    
  •                    -    减
    
  •                    \*   乘(转义符*)
    
  •                    /    除
    
  •                    %    求余
    
  •   文件测试  -f 是否文件
    
  •            -d 是否为目录
    
  •            -r 是否可读
    
  •            -w 是否可写
    
  •            -x 是否可执行
    
  •            -e 文件是否存在
    
  •   数值比较  -eq  等于
    
  •            -ne  不等于
    
  •            -gt  大于
    
  •            -lt  小于
    
  •            -ge  大于等于
    
  •            -le  小于等于
    
  •   字符串比较 =   第一个字符串等于第二个
    
  •             !=  取反 第一个字符串不等于第二个
    
  •             -z  测试字符串是否为空
    
  •   逻辑测试   &&  逻辑与运算
    
  •             ||  逻辑或运算
    
  •             !   逻辑非
    
  •   if 语句
    
  •            if [ $a -eq $b ]
    
  •            then
    
  •              echo "$a 等于 $b"
    
  •            else
    
  •              echo "$a不等于$b"
    
  •            fi
    
  •            if [ $a -eq $b ]
    
  •            then
    
  •               echo "$a等于$b"
    
  •            elif [ $a -lt $b ] 
    
  •            then
    
  •               echo "$a 小于 $b"
    
  •            else 
    
  •               echo "$a 大于 $b"
    
  •            fi
    
  •      for循环
    
  •            for i in array_ip(可以为文件,数组,命令的结果)
    
  •            do
    
  •              echo "$i"
    
  •            done
    
  •      示例:
    
  •      a=$(ls /etc)
    
  •      for i in $a
    
  •      do
    
  •      echo $i
    
  •      done
    
  •      while循环
    
  •      while [ $a -ge $b ]
    
  •      do
    
  •         echo "hello world"
    
  •      done 
    
  •      case语句
    
  •      case 变量值 in 
    
  •      模式1)
    
  •      命令序列1
    
  •      ;;
    
  •      模式2)
    
  •      命令序列2
    
  •      ;;
    
  •      模式3)
    
  •      命令序列2
    
  •      ;;
    
  •       *)
    
  •      默认命令序列
    
  •      esac
    
  •      sleep  延时单位/秒
    
  •      $RANDOM 随机数
    
  •      exit 终止脚本
    
  •      break n 跳出几层循环
    
  •      continue 跳出当前循环**
    

© 著作权归作者所有

人情世故
粉丝 5
博文 23
码字总数 8850
作品 0
赤峰
运维
私信 提问
Web安全_weevely使用_

一、weevely使用 weevely的功能同之前学习过的中国菜刀,但其功能更加丰富且在linux和windows下都可以运行。kali linux环境下已集成weevely。分weevely生成shell文件、weevely连接后台、wee...

BeatRex
2018/11/22
0
0
Unity 成为 Ubuntu 11.04 默认操作界面

Mark Shuttleworth 宣布 Unity 将取代 GNOME Shell 成为 Ubuntu 11.04 的默认操作界面。 Unity 是由 Ubuntu 针对上网本发起的用户操作界面改良项目,与 GNOME 3.0 即将引入的 GNOME Shell 同...

红薯
2010/10/26
2.3K
7
Shell编程的究极系列(补充语法)

基于上一篇的基础语法,我来写写一些更进一层的语法规则,也是我们平时如果要进行Shell编程的话,经常使用的点,其中包括这几个话题:数组、双小括号的算术运算、函数、退出码,篇幅相较上一...

心中的理想乡
2018/10/19
68
0
python流程控制、函数总结

shell脚本是由系统命令、变量、流程控制三者组合而成的; 类比python程序,与shell中能够实现很多功能的系统命令类似,python有很多可以实现不同功能的模块; 变量方面,shell脚本有系统变量...

yumushui991
2017/03/09
0
0
运维的shell小编(5)

第五章、Shell基本语法 5.1shell条件测试 Shell测试有test命令和[]方式,如果结果为0表示正确,否则错误。可以测试文件状态,数值比较,逻辑测试等。 测试文件状态:-f是否为文件,-d是否为目...

wbf961127
2017/11/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Java 文件类操作API与IO编程基础知识

阅读目录: https://www.w3cschool.cn/java/java-io-file.html Java 文件 Java 文件 Java 文件操作 Java 输入流 Java 输入流 Java 文件输入流 Java 缓冲输入流 Java 推回输入流 Java 数据输入...

boonya
41分钟前
5
0
SDKMAN推荐一个好

是在大多数基于Unix的系统上管理多个软件开发工具包的并行版本的工具。它提供了一个方便的命令行界面(CLI)和API来安装,切换,删除和列出sdk相关信息。以下是一些特性: By Developers, fo...

hotsmile
今天
9
0
什么是 HDFS

是什么? HDFS 是基于 Java 的分布式文件系统,允许您在 Hadoop 集群中的多个节点上存储大量数据。 起源: 单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称...

Garphy
今天
7
0
一起来学Java8(四)——复合Lambda

在一起来学Java8(二)——Lambda表达式中我们学习了Lambda表达式的基本用法,现在来了解下复合Lambda。 Lambda表达式的的书写离不开函数式接口,复合Lambda的意思是在使用Lambda表达式实现函...

猿敲月下码
今天
11
0
debian10使用putty配置交换机console口

前言:Linux的推广普及,需要配合解决实际应用方能有成效! 最近强迫自己用linux进行实际工作,过程很痛苦,还好通过网络一一解决,感谢各位无私网友博客的帮助! 系统:debian10 桌面:xfc...

W_Lu
今天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部