&&

command1 && command2 [&& command3 ...]
    只有在&&左边的命令返回真时,&&右边的命令才会被执行下去
    只要有一个命令返回假,后面的命令就不会被执行
    想:所有&&连接的条件,只要发现有一个假的话,就不必要执行下去了,因为最终结果肯定是假。
    注:命令返回值 $? == 1表示假,命令返回值 $? == 0 表示真

||

command1 || command2 [|| command3 ...]
    只有左||左边返回假的时候,||右边的命令才会执行
    只要有一个命令返回真,后面的命令就不会被执行
    想:所有||连接的条件就是一个或功能,有一个真那就是真

&

&放在启动参数后面表示设置此进程为后台进程,与&&完全不一样的意义
    command1 &
    默认情况下,进程是前台进程,这时就把Shell给占据了,
    我们无法进行其他操作,对于那些没有交互的进程,很多时候,我们希望将其在后台启动,可以在启动参数的时候加一个'&'实现这个目的

|

人称管道符
    上一条命令的输出,作为下一条命令参数
    command1 | command2
    # cat /etc/passwd | grep /bin/bash | wc -l
    第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,
    grep命令找出含有“/bin /bash”的所有行;
    第二个管道将grep的输出送给wc命令,
    wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash

;

command1 ; command2
    ;将命令分隔,每个命令都会从左到右顺序执行。彼此之间没有关系,所有命令都会执行到

> <

> 和 < 分别代表重定向的方向,是从左到右还是从右到左

>> <<

>> 和 << 代表追加,也就是不改变重定向目标文件原有的内容,追加在后面

&>
 
    /dev/null 表示空设备文件;
    0 表示stdin标准输入;
    1 表示stdout标准输出;
    2 表示stderr标准错误。
    &>  比 >多了一个字符 ,当我们想用>重定向到一个文件时,如果左边的是标准输出,那就能成功。
    但如果左边是一个报错,那我们就会在屏幕上看到报错信息,而文件中并没有东西输出。
    但如果前面加上&,就会将报错转化为标准输出重定向到文件中而不会在屏幕输出

cd -

cd - 
    返回切换前的目录

2>&1

/dev/null 表示空设备文件;
    可以把/dev/null 可以看作"黑洞". 它等价于一个只写文件. 所有写入它的内容都会永远丢失. 而尝试从它那儿读取内容则什么也读不到.
    0 表示stdin标准输入;
    1 表示stdout标准输出;
    2 表示stderr标准错误。    
    2>&1 的意思就是将标准错误重定向到标准输出
    eq:解读 ls ** >out.txt 2>&1
        上面相当于 ls ** 1>out.txt 2>&1
        执行 ls ** 如果产生标准输出(1),那么结果会到out.txt中去;如果产生错误输出(2),那么结果会到标准输出(1)中去,
        因为标准输出(1)是到out.txt中去的,所以错误输出(2)也会到out.txt 中去
    这么说来 ** &>/dev/null     应该等价于 ** >/dev/null 2>&1

$0

当前脚本的文件名

$n

传递给脚本或函数的参数。n 可以是1、2、3...任何一个参数,数字是几就表示第几个参数

$#

传递给脚本或函数的参数的个数

$*

传递给脚本或函数的所有参数

$@

传递给脚本或函数的所有参数。
    被双引号包含时会与$*有所不同:"$*" 会将所有的参数作为一个整体,
    以"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数

$?

上个命令的退出状态或是函数的返回值

$$

当前Shell进程的ID。对于Shell脚本来说就是这些脚本所在的进程ID

[] [[]]

[] 是 test 命令的简写 。[command] 等价于 test command 
        必须在左括号的右侧和右括号的左侧各加一个空格,否则会报错
        大于符号或小于符号必须要转义,否则会被理解成重定向
    [[]]是[ ]的针对数学比较表达式和字符串表达式的加强版

python基础分享的更多相关文章

  1. python基础系列教程,数学基础系列教程,数据分析系列教程,神经网络系列教程,深度学习系列视频教程分享交流

    大家好,我是一个技术爱好者,目前对大数据人工智能很是痴迷,虽然学历只有高中,目前正在大踏步的向着人工智能狂奔,如果你也想学习,那就来吧 我的学习进度python基础(Numpy,pandas,matp ...

  2. Python基础教程分享,视频教程免费下载!

    给大家分享一套我初学Python时看的一套基础教程,是视频教程,免费分享给大家,希望对正在学习Python或者打算学习Python的朋友有帮助哈~~ 废话不多说 为期92天的Python基础教程视频教 ...

  3. Python基础教程【读书笔记】 - 2016/8/3

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第十一波:第11章  文件和素材 本章更进一步,让程序能够接触更多的领域:文件和流.接下来介绍的函数和对象可以让你在程序 ...

  4. Python基础教程【读书笔记】 - 2016/7/31

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第十波:第10章  充电时刻 Python语言的核心非常强大,同时还提供了更多值得一试的工具.Python的标准安装包括 ...

  5. Python基础教程【读书笔记】 - 2016/7/24

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第九波:第9章  魔法方法.属性和迭代器  在Python中,有的名称会在前面和后面都加上两个下划线,这种写法很特别.已 ...

  6. Python基础教程【读书笔记】 - 2016/7/19

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第八波:第4章  字典:当索引不好用时 将学到一种通过名字引用值的数据结构,这种结构类型称为映射mapping.字典是P ...

  7. Python基础教程【读书笔记】 - 2016/7/18

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第七波:第3章 字符串 介绍如何使用字符串格式化其他的值,并简单了解一下利用字符串的分割.联接.搜索等方法能做些什么. ...

  8. Python基础教程【读书笔记】 - 2016/7/14

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第六波:第2章  列表和元组 [总览]  数据结构,是通过某种方式组织在一起的数据元素的集合,数据元素可以使数字或字符串 ...

  9. Python基础教程【读书笔记】 - 2016/7/10

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第五波:第1章  基础知识 [总览]  介绍如何得到所需的软件,然后讲一点点算法及其主要的组成.学习变量variable ...

随机推荐

  1. thymeleaf下拉框从后台动态获取集合数据并回显选中

    今天遇到从后台集合中取出对象在前台页面下拉列表展示: <select name="signature" lay-search="" class=" ...

  2. mockjs在vue中的使用

    mockjs在vue中的使用 安装好vue-cli后 加载模块: npm install mockjs 创建mock.js文件到src目录下的任一合适文件内新建mockjs.js,设置好拦截信息,设置 ...

  3. C# 操作数据库常用的 SqlDbHelper

    原博客园转载于   https://www.cnblogs.com/felix-wang/p/6742785.html using System; using System.Collections.G ...

  4. 第九次java课堂笔记

  5. 用Tensorflow搭建神经网络的一般步骤

    用Tensorflow搭建神经网络的一般步骤如下: ① 导入模块 ② 创建模型变量和占位符 ③ 建立模型 ④ 定义loss函数 ⑤ 定义优化器(optimizer), 使 loss 达到最小 ⑥ 引入 ...

  6. [图形学] B样条曲线 - 原理和C++实现的演示程序(附源码)

    http://blog.csdn.net/mahabharata_/article/details/71856907 大二的时候,曾受老师所托,用C++而不是OpenGL去写B样条曲线的教学程序.时隔 ...

  7. python常见问题汇总

    1.python使用selenium中的时间等待 a.强制等待 time.sleep() b.隐式等待: 如果某些元素不是立即可用的,隐式等待是告诉WebDriver去等待一定的时间后去查找元素. 默 ...

  8. LeakCanary 来检查 Android 内存泄漏

    LeakCanary 来检查 Android 内存泄漏

  9. RedLock.Net - 基于Redis分布式锁的开源实现

    工作中,经常会遇到分布式环境中资源访问冲突问题,比如商城的库存数量处理,或者某个事件的原子性操作,都需要确保某个时间段内只有一个线程在访问或处理资源. 因此现在网上也有很多的分布式锁的解决方案,有数据 ...

  10. Lavarel Route::resource

    RESTful Resource controller A RESTful resource controller sets up some default routes for you and ev ...