bash的基础特性:
    globbing:文件名通配(整体文件名匹配,而非部分)
        匹配模式:元字符
            *:匹配任意长度的任意字符
                例:pa* 以pa开头的都符合
                    *pa* 包含pa的都符合
                    *pa    以pa结尾的都符合
                    *p*a* 里边有p,有a不在一起的都符合

?:匹配任意单个字符
                pa?
                    pa 不符合
                    paa 符合
                    passwd 不符合
                ??pa
                p?a
                p?a?

[]:匹配指定范围内的任意单个字符
                有几种特殊格式:
                    [a-z],[A-Z] 注意:在这儿不区分大小写的
                    [0-9] 表示任意单个数字
                    [a-z0-9] 表示数字,或英文字母都可以
                    [abcxyz] 在前边字母中任意一个字母

[[:upper:]]    表示所有大写字母
                    [[:lower:]] 表示所有小写字母
                    [[:alpha:]] 表示所有字母
                    [[:digit:]] 表示所有数字
                    [[:alnum:]]    表示所有的字母和数字
                    [[:space:]] 表示所有空白字符
                    [[:punct:]] 表示所有标点符号

例:表示pa后边有两位数字 pa[0-9][0-9]
                            表示200-299 2[0-9][0-9]

[^]:匹配指定范围外的任意单个字符
                [^[:upper:]] 非大写字符之外的单个字符
                [^0-9] 非数字之外的单个字符
                [^[:alnum:]] 非所有字母和数字外的单个字符

IO重定向及管道
    程序:指令+数据
        程序:必须要有IO,每个程序必定有输入输出的地方

可用于输入的设备:文件
            例如:键盘设备、文件系统上的常规文件、网卡等
        可用于输出的设备:文件
            显示器、文件系统上的常规文件、网卡等

程序的数据流有三种:
            输入的数据流:<--标准输入(stdin),键盘
            输出的数据流:-->标准输出(stdout),显示器
            错误输出流:  -->错误输出(stderr),显示器

生成的文件有与之对应的fd:file descriptor,文件描述符
            标准输入:0
            标准输出:1
            错误输出:2

IO重定向:
        输出重写向:>
            特性:覆盖输出
        输出重定向:>>
            特性:追加输出

# set -C
            禁止覆盖输出重写向已存在的文件
            此时可使用强制覆盖输出:>|
        # set +C
            关闭"set -C"的功能
          # cat /etc/issue > /tmp/issue.out
        可以看到上边不让覆盖已存在的文件
          # cat /etc/issue >| /tmp/issue.out
        如果想要强行覆盖已存在的文件,可以用“>|”

错误输出流重定向:2>,2>>
        合并正常输出流和错误输出流:
            第一种:&>
                    &>>
            第二种:COMMAND > /PATH/to/somefile 2>&1
                    COMMAND >> /PATH/to/somefile 2>&1

特殊设备: /dev/null
                放到这个文件里边的数据都会被丢弃,如果我们不需要数据流的时候可以放到这个里边
                比如有时候我们只需要命令的状态结果,而非数据时就可以用到这个特殊设备

输入重定向:<
            tr命令:
                tr 命令用于转换或删除文件中的字符。
                tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。
                tr [OPTION]... SET1 [SET2]
                    把输入的数据当中的字符,凡是在SET1定义范围内出现的,通通对位转换为SET2出现的字符

参数说明:
                     -c, --complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
                    -d, --delete:删除指令字符
                    -s, --squeeze-repeats:缩减连续重复的字符成指定的单个字符
                     -t, --truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

用法1:
                    tr SET1 SET2 < /PATH/form/somefile
                用法2:
                    tr -d SET1 < /PATH/form/somefile
                注意:不修改原文件

Here Document:<<        
                cat << EOF
                cat > /PATH/to/somefile << EOF

管道:|
        连接程序,实现将前一个命令的输出直接定向后一个程序当作输入
        COMMAND1 | COMMAND2 | COMMAND3 ……

tee命令:
            把前一个命令的结果既保存一份到文件中,又把结果输出到显示器中
            COMMAND | tee /PATH/to/somefile

练习1:把/etc/passwd文件的前6行的小写输出为大写
        # head -6 /etc/passwd | tr 'a-z' 'A-Z'

Linux用户组管理及用户权限1的更多相关文章

  1. Linux用户组管理及用户权限2

    用户.组和权限管理    Multi-tasks,Multi-Users,多任务,多用户的计算机    每个使用者:        用户标识.密码:            Authentication ...

  2. Linux用户组管理及用户权限4

    权限管理:    ls -l        rwxrwxrwx:            左三位:定义user(owner)的权限            中三位:定义group的权限           ...

  3. Linux用户组管理及用户权限3

    用户.组管理命令 安全上下文:        进程以其发起者的身份运行:            进程对文件的访问权限,取决于发此进程的用户的权限 系统用户:为了能够让那些后台进程或服务类进程以非管理员 ...

  4. linux用户管理,linux用户口令管理,linux用户组管理,linux用户权限管理详解

    linux用户管理 http://www.qq210.com/shoutu/android 用户账号的添加(新加用户需添加用户口令) :增加用户账号就是在/etc/passwd文件中为新用户增加一条记 ...

  5. linux 用户管理,用户权限管理,用户组管理

    linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...

  6. Linux运维六:用户管理及用户权限设置

    Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...

  7. linux和windows互传文件、用户配置文件和密码配置文件、用户组管理、用户管理...

    linux和windows互传文件 第一种:在linux主机上下载lrzsz软件包 1.yum install lrzsz 2.通过rz命令上传window的文件到linux主机上 用过sz 文件名下 ...

  8. Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解

    这节课我们重点来学习权限管理命令,说到权限大家可能第一时间能想到的就是读.写.执行 rwx 三种权限,在正式讲解权限命令之前,先简单的介绍一下rwx权限对于文件和目录的不同含义. 权限字符 权限 对文 ...

  9. Linux系列教程(十五)——Linux用户和用户组管理之用户管理命令

    上篇博客我们介绍了用户管理的相关配置文件,包括用户信息文件/etc/passwd,用户密码文件/etc/shadow:然后介绍了用户组信息文件/etc/group,用户组密码文件/etc/gshado ...

随机推荐

  1. maven-1-是什么

    背景 1.1. 场景 假如你正在Eclipse下开发两个Java项目,姑且把它们称为A.B,其中A项目中的一些功能依赖于B项目中的某些类,那么如何维系这种依赖关系的呢? 很简单,这不就是跟我们之前写程 ...

  2. uni-app 封装 http promise请求,仅提供 post,all,spread 方法

    简单封装一下 uni-app 的请求,因为项目中只用 post 请求,所以只封装了 post 和 all 方法. 更新,新增 spread 方法 2019-11-22 10:37:21 global. ...

  3. 二分查找算法C++实现

    /************************************************************************* > File Name: binary_se ...

  4. vue中打包之后的dist文件不放在服务器的根目录下

    在工作当中,我使用webpack打包的dist,由于管理的问题,无法被放在服务器根目录下 ,但在目前的vue配置,dist不放在根目录下,访问页面会成为一片空白,于是便要对vue框架的config进行 ...

  5. BTree B+Tree

    简介 B 树是为了磁盘或其它存储设备而设计的一种多叉平衡查找树.(相对于二叉,B树每个内结点有多个分支,即多叉)B树又可以写成B-树/B-Tree,并不是B“减”树,横杠为连接符,容易被误导首先我们介 ...

  6. github与pycharm

    再也不要使用命令行了 OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443

  7. C# Excel 中设置文字对齐方式、方向和换行

    在Excel表格中输入文字时,我们常常需要调整文字对齐方式或者对文字进行换行.本文将介绍如何通过编程的方式设置文字对齐方式,改变文字方向以及对文字进行换行. //创建Workbook对象 Workbo ...

  8. ASP.NET Core中使用Dapper

    ⒈添加 NuGet 包 Install-Package Dapper ⒉封装数据库类型 using System; using System.Collections.Generic; using Sy ...

  9. Photon Server初识(二) ---通过NHibernate 映射数据库

    一.下载 NHibernate.dill 官网:https://nhibernate.info 或者通过NuGet下载(详情看上一节) 二.新建一个项目,并引入包 引入包 三.配置(重点) 1.配置x ...

  10. php exec执行不等待返回结果

    windows中:pclose(popen("start php.exe test.php","r"));lnuix中: pclose(popen(" ...