交互输入

read    Python中用input()函数,进行输入;

    read命令同时可以定义多个变量值;而输入的内容默认以空格为分隔符,将值输入到对应的变量中;
    如果默认值过多,最后所有的值都会被赋予给最后一个变量;
    如果默认值过少,多余的变量则为空值;
    示例:
    read a b c
    aa bb cc

read如何输入:

  echo "请输入一个目录:"
  我们需要 echo -n 取消换行符号
  echo "请输入一个目录:";read 变量
  请输入一个目录:\etc
 
  常用参数:
    -p
    read -p "请输入一个目录:" 变量
    -t  定义超时时间
    read -t 5 -p "请输入一个目录:" 变量
  

 

for语句的应用场景:

  有一个功能,这个功能需要循环执行,只是执行对象不同;【对象必须是同类数据】

for语句格式:

  a=['a','b','c'] -- 在Python程序中,我们很多情况下,需要调用相应的方法去生成列表;
  for 变量 in 列表;do
    循环体
  done

  for语句的另外一种写法:
    for((初始条件; 条件判断语句; 值变化语句));do
      循环体
    done
 

while语句的格式

  初始值
  while 条件 ;do
    循环体
    let i++  //变化初始值
  done

 

echo

  -e : 使echo命令,能够识别 特殊字符;
  \r   回车不换行
  \n  换行符
  \t   制表符 tab = 4个空格

 

列表的生成方式:

  直接给出字符串列表
    for i in a b c d e ;do
      循环体
    done

  整数列表
    a {start ... end} // {1..1}是不行的 {1..9}  == python range{1,100}
    b seq 命令引用  $(seq [start [step]] end)
    步长  python range{1,100,2}
    seq 20 30
 
  返回列表的命令
  $(COMMAND)

vim 常见用法:

  命令模式:
    dd  剪切
    5dd
    p    粘贴
    yy  复制
    5yy
    p    粘贴

test

  1、test的命令的option的 -a  -o 只在命令中使用;
  例如 [ `du -h $filename | cut -d: -f1` -lt 100K -a -x $filename ] 
    test `du -h $filename | cut -d: -f1` -lt 100K -a -x $filename
  注意:做字符串匹配的时候,不支持正则以及通配符
  2、test test ==  [[  ]]
  再连接两个test的命令的时候,不能使用命令内部option  -o -a
  一般使用  ||   &&  ==  !=  >=  <=
  [[ yum.log == *.log ]]
     

传参

  $@  $*  将参数做为for循环的列表
  $0  -- 和 awk 不一样
  bash中$0代表运行的脚本文件;
  awk中$0整行内容      ---   awk按行执行 
  需要多个词的时候用 "$@",需要一个词的时候用 "$*"
 
 
 

shell_Day05的更多相关文章

随机推荐

  1. P3_注册小程序账号&安装开发者工具

    注册小程序账号 点击注册按钮 使用浏览器打开 https://mp.weixin.qq.com/ 网址,点击右上角的"立即注册"即可进入到小程序开发账号的注册流程,主要流程截图如下 ...

  2. 学习Java Day9

    今天学习了switch,以及bread和read_date的使用,还学习了大数

  3. xmind使用分享

    Xmind 介绍 1. 特点 是表达发散性思维的有效工具,图文并重,把各主题的隶属关系和相关的层级表现出来,把关键字与图像,文字,颜色建立起链接记忆. 2.安装,下载与破解 参考:https://bl ...

  4. 单词检索(search)

    单词检索(search) \(Description\) 小可可是学校图书馆的管理员,现在他接手了一个十分棘手的任务. 由于学校需要一些材料,校长需要在文章中检索一些信息.校长一共给了小可可N篇文章, ...

  5. Balanced Team

    https://vjudge.net/problem/CodeForces-1133C 题意:在数组中找出一段  每两个元素差值不大于5的这段元素个数的最大值. 1 #include <iost ...

  6. PostGIS之空间连接

    1. 概述 PostGIS 是PostgreSQL数据库一个空间数据库扩展,它添加了对地理对象的支持,允许在 SQL 中运行空间查询 PostGIS官网:About PostGIS | PostGIS ...

  7. kingbase字符类数据类型和oracle字符类型的区别

    为兼容Oracle的数据类型,KingbaseES扩展了Oracle的NUMBER.VARCHAR2.CHAR(n)和DATE类型.该措施使得移植Oracle的Create Table等DDL语句时, ...

  8. 在Django中显示MySQL语句

    在setting中添加以下内容 LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console' ...

  9. js控制关闭layui的switch开关

    <input class="switch" type="checkbox" lay-skin="switch" lay-filter= ...

  10. PG数据库运维工具要覆盖哪些能力

    目前的国产数据库中,很多产品都是以PG社区版代码作为研发起点的,还有一些产品是基于openGauss开源项目的.这些数据库的基础特性都和社区版的PG数据库类似,不过也做了一定的拓展.不过从使用与运维上 ...