linux

输入、输出重定向 

>若文件不存在,则创建,并将正确的输出填充,若文件已存在,则覆盖原内容

>> 若文件不存在,则创建,并将正确的输出内容填充,若文件已存在,则追加内容

2> 若文件不存在,则创建,并将错误的输出填充,若文件已存在,则覆盖原内容
2>> 若文件不存在,则创建,并将错误的输出内容填充,若文件已存在,则追加内容

&> 若文件不存在,则创建,并将所有的输出填充,若文件已存在,则覆盖原内容
&>> 若文件不存在,则创建,并将所有的输出内容填充,若文件已存在,则追加内容

2>&1 将错误结果转为正确结果 |& 将正确及错误都传递给右边命令用
1>&2 将正确结果转为错误结果

useradd 
-u UID
-o 配合-u 选项,不检查UID的唯一性
-g GID/GROUP NAME:指明用户所属基本组,可为组名,也可以GID
-c “COMMENT”:用户的注释信息
-d HOME_DIR: 以指定的路径(不存在)为家目录 确保指定目录的目录名要存在,而基名不要存在
-s SHELL: 指明用户的默认shell程序,默认不指定是为/bin/bash
-G GROUP1[,GROUP2,…]:为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users组做主组
-r: 创建系统用户 CentOS 6: ID<500,CentOS 7: ID<1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户

usermod
-u UID: 新UID
-g GID: 新主组
-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项
-s SHELL:新的默认SHELL
-c ‘COMMENT’:新的注释信息
-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项
-l login_name: 新的名字;
-L: lock指定用户,在/etc/shadow 密码栏的增加 !
-U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉
-e YYYY-MM-DD: 指明用户账号过期日期
-f INACTIVE: 设定非活动期限

passwd [OPTIONS] UserName: 修改指定用户的密码,仅root用户权限
passwd: 修改自己的密码
常用选项:
-l:锁定指定用户
-u:解锁指定用户
-e:强制用户下次登录修改密码
–stdin:从标准输入接收用户密码
echo “PASSWORD” | passwd –stdin USERNAME

gpasswd

-a, –add USER 增加单个用户到指定组当中(组管理员可执行)
-d, –delete USER 从指定组中删除单个用户(组管理员可执行)
-r, –delete-password 将指定组的组密码删除(组管理员可执行)
-R, –restrict 限制组成员访问该组
-M, –members USER,… 一次性设置组成员(仅root执行)
-A, –administrators ADMIN,… 设置组管理列表(root执行)

newgrp
用户会打开一个子shell,在这个子shell下,该用户的主要组切换为该组,若该用户本不属于该组,则要输入组密码,若该组属于用户的附加组之一,则无需输入密码。

chown 仅root才能执行
USERNAME FILENAME/DIRNAME
所属人修改文件的权限
-R 递归修改
.|: GNAME FILENAME/DIRNAME 修改所属组
USERNAME.|:GNAME FILENAME/DIRNAME 同时修改文件的所属人及所属组
–reference=USERNAME FILENAME/DIRNAME 将指定文件的从属关系设置为与指定文件相同

chgrp 仅root和文件的所属人可以更改文件的所属组(但所属人一定要属于目标组)、
GNAME FILENAME/DIRNAME
-R 递归修改

cat
-E 显示结束符$
-T 显示TAB(^I)
-v 显示windows换行符(^M)
-t = -vT
-A = -vTE 表示所有控制符
-n 显示行号
-b 空行不参数编号
-s 将连续的空行压缩为一个空行

sort

默认排序方式受LC_COLLATE影响为UTF-8按首字母来排
sort -n 将指定列当做整体并以数字排序
sort -r 倒序
sort -f 忽略字母大小写
sort -u 去重
sort -t指定分隔符 -k以第几列
cat /etc/passwd |sort -t: -k3 -n

 

uniq
uniq命令:从输入中删除前后相接的重复的行
uniq [OPTION]… [FILE]…
-c: 显示每行重复出现的次数
-d: 仅显示重复过的行
-u: 仅显示不曾重复的行
连续且完全相同方为重复
常和sort 命令一起配合使用:
  sort userlist.txt | uniq -c

 

grep
–color=auto 关键字高亮显示,在centos7当中默认做为别名
-v 显示不被匹配到的行
-i 忽略关键字的大小写
-c 显示匹配行的数量
-o 仅显示匹配到的关键字
-q 静默输出,不打印过滤的结果,也可以用 &> /dev/null
-A x 当前行及后x行
-B x 当前行及前x行
-C x 当前行及前后x行
nmap -v -sP 172.18.118.0/24 |grep -B1 ‘Host is up’ |grep for |cut -d” ” -f5
-e 关键字1 -e 关键字2 或者 “关键字1\|关键字2” 表示逻辑或
-w 匹配整个单词 表示字符边界 也可以用 “\<关键字\>”
-E 或 egrep 表示使用扩展正则表达式
-F 或 fgrep 不使用正则表达式

正则表达式

文件名通配符当中 * 表示 0或多个任意字符 ? 表示任何一个单一字符

匹配次数:用在要指定次数的字符后面,用于指定前面的字符要出现的次数
* 匹配前面的字符任意次,包括0次
贪婪模式:尽可能长的匹配
.* 任意长度的任意字符
\? 匹配其前面的字符0或1次
\+ 匹配其前面的字符至少1次
\{n\} 匹配前面的字符n次
\{m,n\} 匹配前面的字符至少m次,至多n次
\{,n\} 匹配前面的字符至多n次
\{n,\} 匹配前面的字符至少n次

位置锚定:定位出现的位置

^ 行首锚定,用于模式的最左侧
$ 行尾锚定,用于模式的最右侧
^PATTERN$ 用于模式匹配整行
^$ 空行
^[[:space:]]*$ 空白行
grep -v “^[[:space:]]*$” passwd 去除文件中的空白行
\< 或 \b 词首锚定,用于单词模式的左侧
\> 或 \b 词尾锚定;用于单词模式的右侧
\<PATTERN\> 匹配整个单词
          grep “\<root\>” passwd

 

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99337

(0)
远方不远远方不远
上一篇 2018-05-26 09:19
下一篇 2018-05-26 13:46

相关推荐

  • Linux中用户、组和权限

    用户user Linux用户:Username/UID 管理员:root,0 普通用户: 系统用户:1-499 交互式登录:登录用户500+,1000+9(CentOs7) 组group  Linux组:Groupname/GID 管理员组:root,0(私有组) 普通组:系统组:1-499,1-999;普通组:500+,1000+ Linux组的类别:1.…

    Linux笔记 2018-04-05
  • Linux 安装简介

    因为自己对6版本不太熟悉,所以,整理梳理了整个安装的流程,供大家参考使用。

    2018-07-23
  • sed工具find工具与压缩打包工具基础命令详解

    附带上课练习题与答案

    2018-04-13
  • liniux课程第一周总结

    第一天课程内容 MBR分区类型:主分区:1-4,一块硬盘最多4个主分区,不可以分小区,可以用来启动操作系统(系统分区),直接建文件系统,存放数据扩展分区:一块硬盘最多一个扩展分区,可以没有,加主分区最多4个,不能创建文件系统,可以再划分更小的分区(即逻辑分区)逻辑驱动器(分区):可以创建文件系统,存放数据 系统分区:启动操作系统的分区启动分区:安装操作系统的…

    Linux笔记 2018-04-01
  • Docker容器技术之Dokcer networking

    我们知道,docker容器中的资源用namespace进行了隔离,每一个容器中都有自己独立的一套网络资源,docker容器如何实现单机通讯与跨主机通讯呢?本节内容将为你解答这个问题。

    2018-08-08
  • cobbler自动化安装

    实验:实现cobbler安装 1 安装包 yum install cobbler(EPEL) dhcp httpd tftp systemctl enable cobblerd dhcpd httpd tftp systemctl start cobblerd httpd tftp 2 cobbler check 3 vim /etc/cobbler/set…

    Linux笔记 2018-05-27