交互输入

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. python判断密码连续,重复,大小写、数字、符号混合密码复杂度要求

    一.python 判断密码连续,重复,大小写.数字.符号混合密码复杂度要求 1. 运行环境 python 3.6.8 2. 密码必须包含大小写.数字.特殊符号中的3种且长度为8-16位 def ver ...

  2. 《关于我因为flink成为spark源码贡献者这件小事》

    各位读者老爷请放下手上的板砖,我可真没有标题党,且容老弟慢慢道来. spark和flink本身相信我不用做过多的介绍,后端同学不管搞没搞过大数据,应该都多多少少听过. 如果没听过,简单说,spark和 ...

  3. Vue前后端交互、生命周期、组件化开发

    目录 Vue前后端交互.生命周期.组件化开发 一.Vue用axios与后端交互 二.Vue的生命周期 三.组件化开发 Vue前后端交互.生命周期.组件化开发 一.Vue用axios与后端交互 ​ 如果 ...

  4. 【TS】枚举

    ts中,枚举类型就是,枚举里面的每个数据值都可以叫做元素,每个元素都有自己的编号,编号是从0开始的,依次递增加1 , 语法: enum 枚举名 {} 此处定义一个枚举类型,例如: enum Color ...

  5. 学习Vue过程中遇到的问题---code: 'MODULE_NOT_FOUND'

    在学习安装脚手架Vue-cli过程中 步骤为: 第一步(仅第一次执行):全局安装@vue/cli. npm install -g @vue/cli 第二步:切换到你要创建项目的目录,然后使用命令创建项 ...

  6. Java开发中要避免的坑和一些代码优化技巧

    1:动态SQL遇到的坑,先看下面OGNL表达式的说明. Any object can be used where a boolean is required. OGNL interprets obje ...

  7. PostgreSQL数据库运行日志

    PostgreSQL运行日志可以实现日志输出记录,默认是没有启动记录.这个日志一般是记录服务器与DB的状态,比如各种Error信息,定位慢查询SQL,数据库的启动关闭信息,发生checkpoint过于 ...

  8. qt_2d画图

    qt中如何画图? 使用Qpainter类进行2D绘画 例如以下代码进行直线的绘制 QPainter painter(this);painter.setPen(Qt::red);painter.draw ...

  9. C#辗转相除法输出最大公约数

    void main() { int r, m, n, t; scanf_s("%d\n%d", &m, &n); if (m < n) { t = m; m ...

  10. jsgrammer

    jsgrammer 计算机编程基础 能够说出什么是编程语言 能够区分编程语言和标记语言的不同 能够说出常见的数据存储单位及其换算关系 能够说出内存的主要作用以及特点 关键词:编程语言 计算机基础 编程 ...