#
转换或删除字符
#tr [OPTION]... SET1 [SET2]
删除字符
tr -d
tr 'abc' 'ABC'
一路输入,两路输出
# tee [OPTION]...[FILE]...
# cat /etc/rc.d/rc.sysinit |tr 'a-z' 'A-Z'|tee /tmp/tee.out
文本操作工具
# wc [OPTION]... [FILE]...
统计文件行数
# wc -l /etc/passwd
行切割
#cut OPTION... [FILE]...
-d 指明标识符
-f #
#,# 多个不连续的字段
--output-delimiter=STRING 指定替换分隔符
# cut -d':' -f1,7 --output-delimiter=' ' /etc/passwd
排序1
#sort [OPTION]... [FILE]...
-r 逆序排序
-f 忽略字符大小写
-t 指明分隔符
-k # 以指定字段为标准排序
-n 以数字排序(默认以字符排序)
-u 排序后去重
# sort -t: -k 3 -n /etc/passwd
排序2
# uniq [OPTION]... [INPUT [OUTPUT]]
-c 显示每行重复出现的次数
-d 仅显示重复过的行
-u 仅显示不重复的行
# history |cut -d' ' -f6|sort|uniq -c
添加用户
# useradd [options] LOGIN
-u UID,定义在/etc/login.defs
-g GID
-c "COMMENT" 用户描述信息
-d /PATH/TO/FILE 指定家目录
-s shell 指定用户默认shell程序,/etc/shells
-G GROUP1[,GROUP2,...[,GROUPN]]] 附加组
-r 创建系统用户
查看用户
# id [OPTION]... [USER]
-u 查看UID
-g 查看GID
-G 查看所有组,包含附加组
-n Name
切换用户或者以其他用户运行程序
# su [options...] [-] [user [args...]]
# su Username #非登陆式切换,即不会读取目标用户的配置文件
# su - Username #登录式切换
-c 'COMMAND'
-l 相当于 su - Username
修改用户属性
# usermod [options] LOGIN
-u 修改UID
-g 修改GID
-a -G GROUP1[,GROUP2,...[,GROUPN]]] 附加组
-a 表示append,否则原附加组将被覆盖
# usermod -a -G root yuyang
-d -m 修改家目录
-m 移动原来的家目录到新的家目录
# usermod -d /home/mis -m yuyang
-L 锁定帐号
-U 解锁帐号
添加密码
# passwd
--stdin 从标准输入接收用户
# cat pass|passwd --stdin yuyang &>/dev/null
-x 最大使用期限
-i 非活动期限
删除用户
#userdel [选项] 登录
-r 删除用户家目录
#gpasswd [选项] group
-a, --adduser
向名为 group 的组中添加用户 user。
-d, --deleteuser
从名为 group 的组中移除用户 user。
#chage [选项] 用户名
选项:
-d, --lastday 最近日期 将最近一次密码设置时间设为“最近日期”
-E, --expiredate 过期日期 将帐户过期时间设为“过期日期
-I, --inactive INACITVE 过期 INACTIVE 天数后,设定密码为失效状态
-l, --list 显示帐户年龄信息
-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”
-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”
-R, --root CHROOT_DIR chroot 到的目录
-W, --warndays 警告天数 将过期警告天数设为“警告天数
修改文件权限
# chmod [OPTION]... MODE[,MODE]... FILE...
-R 递归修改权限
修改一类用户的所有权限
a=
u=
g=
o=
ug=
uo
go=
# chmod g=rw pass
修改一类用户的某个权限
u+
u-
+x
-x
以某个文件为参考修改权限
# chmod [OPTION]... --reference=RFILE FILE...
# chmod --reference=pass.txt tmp.txt
修改某个文件属主/属组
# chown [OPTION]... [OWNER][:[GROUP]] FILE...
# chown yuyang:yuyang pass.txt
以某个文件为参考修属主/属组
# chown [OPTION]... --reference=RFILE FILE...
取基名
# basename /etc/passwd
取目录名
# dirname /etc/passwd
VIM教程
# vimtutor
修改本地语言
# locale
# LANG=zh_CN.UTF-8
文件查找
#find [OPTION]...[查找路径][查找条件][处理动作]
查找条件
文件名查找
-name "FILENAME" 支持使用通配符
-iname "FILENAME" 忽略名称大小写
-regex "PATTERN" 以PATTENRN匹配整个文件路径字符串
属组属主查找
-user USERNAME
-group GROUP
-UID
-GID
-nouser
-nogroup
文件类型查找
f 普通文件
d 目录
l 符号连接文件
s 套接字文件
b 块设备
c 字符设备
p 管道文件
组合条件
-a
-o
-not,!
文件大小查找
-size
#UNIT (#-1,#]
-#UNIT [0,#-1]
+#UNIT [#, ]
时间戳查找
以天为单位
-atime
-mtime
-ctime
以分钟为单位
-amin
-mmin
-cmin
权限查找
-perm MODE 精确权限匹配
处理动作
-ls
-delete
-fls /path/to/somefile 查找到所有文件的长格式信息到指定文件中
-ok COMMAND {}\查找到的每个文件执行由COMMAND指定命令,要求用户交互
-exec COMMAND {}\ 不要求用户交互
#find | xargs COMMAND