重定向与用户与组管理示例
时间:2019-10-24
本文章向大家介绍重定向与用户与组管理示例,主要包括重定向与用户与组管理示例使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
Table of Contents
globbing:文件名通配
匹配模式:元字符
- *:匹配任意长度的任意字符
- ?:匹配任意单个字符
- 有几种特殊的格式:
详情见man 7 glob
- [a-z] , [A-Z] , [0-9] , [a-z0-9]
[:upper:]
所有大写字母[:lower:]
所有小写字母[:alpha:]
所有字母[:digit:]
所有数字[:alnum:]
所有的字母和数字[:space:]
所有空白字符[:punct:]
所有标点[:print:]
所有可打印字符
- [^]:匹配范围外的字符
IO 重定向
程序的三种数据流:
- 输入的数据流: stdin
- 输出的数据流: stdout
- 错误输出流: stderr
fd:file descriptor 文件描述符:
- stdin:0
- stdout:1
- stderr:2
重定向
输出重定向:
>
特性:覆盖输出
set -C
:可禁止覆盖至已存在文件
可使用强制覆盖输出:>|
set +C
:可关闭- 错误输出重定向
2>
- 合并所有输出流
$>
2>&1
- 输出到拉圾箱
可定向到 /dev/null
追加输出重定向:
>>
特性:追加输出
输入重定向:
<
Here Document:
<<
cat << EOF
cat > /PATH/TO/FILE << EOF
tr
形式
tr [OPTION]... SET1 [SET2]
把 SET1 中出现的字符转化为 SET2 中对应位置的字符。OPTION
- -d:删除字符
xargs
COMMAND1 |xargs COMMAND2
用于将前一个命令的输出作为下一个命令的参数
管道:
COMAND1|COMAND2|COMAND3
将前一个命令的输出作为后一个命令的输入。
tee
COMMAND2 | tee /PATH/TO/FILE | COMMAND2
将数据分出来
通配与重定向示例
显示/etc下以非字母开头,后跟一个字母以及其它任意长度字符的文件与目录
ls -d /etc/[^[:alpha:]]*
复制/etc下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中
cp /etc/p*[[:digit:]] /tmp/mytest1
将/etc/issue文件中的内容转换为大写并存至/tmp/issue.out中
cat /etc/issue | tr [a-z] [A-Z] > /tmp/issue.out
用户与用户组管理示例
创建组distro ,且gid为2019
groupadd -g 2019 distro
创建用户mandriva,uid为1005,基本组为distro
useradd -u 1005 -g distro mandriva
创建用户mageia,uid为1100,家目录为/home/linux
useradd -u 1100 -b /home/linux mageia
给用户mageia添加密码mageedu,设置用户密码7天后过期
echo "mageedu" | passwd -e 7 --stdin mageia
删除mandriva,保留家目录
userdel mandriva
创建用户slackware,uid为2002,基本组为distro,附加组为peguin
useradd -u 2002 -g distro -G peguin slackware
修改slackware的默认shell为/bin/tcsh
usermod -s /bin/tcsh slackware
为用户slackware新增附加组admins
usermod -aG amdins slackware
原文地址:https://www.cnblogs.com/chaoyiyang/p/11730932.html
- 如何解决分布式系统中的跨时区问题[原理篇]
- 什么是区块链:块的结构
- Spring读书笔记——bean创建(下)
- 当区块链遇上传统行业 我们的生活和工作会改变吗?
- 如何设计开发好一个 HTTP API?
- [WCF权限控制]基于Windows用户组的授权方式[下篇]
- Spring读书笔记——bean解析
- 10个大数据误区,看看你中了几个?
- 从数据到代码——通过代码生成机制实现强类型编程[上篇]
- Spring读书笔记——bean加载
- Java8-初识Lambda
- 我的WCF之旅(5):面向服务架构(SOA)和面向对象编程(OOP)的结合——如何实现Service Contract的重载(Overloading)
- WCF技术剖析之三十:一个很有用的WCF调用编程技巧[下篇]
- 谈谈WCF中的Data Contract(3):WCF Data Contract对Collection & Dictionary的支持
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Centos7安装k8s集群1.15.0版本
- MSSQL语句执行工具asp版
- springboot版本helloworld发布到k8s示例
- 《K8S权威指南》读书笔记-入门篇
- 回忆phpcms头像上传漏洞以及后续影响
- k8s基本原理
- breakpad概述
- k8s源码分析- Informer机制
- Golang http请求源码分析
- 新浪某站CRLF Injection导致的安全问题
- k8s使用的web框架:go-restful 源码分析
- 图解Golang channel源码
- k8s源码分析(2)- kube-apiserver
- Android一行解决所有双击优化的问题
- Android Transform增量编译