第三周
正式学习的第三周
接触到了一些linux里比较专业的知识,不会像刚开始一样觉得生涩,难以理解了,开始逐渐感觉到有点意思了,但是同样也有一些特别难的,让人感觉脑仁疼的,简直是头皮发麻。慢慢来吧。
分享
显示子文件与子目录:ls ls file
ls -l 显示一些额外信息,比如文件类型、文件权 限、链接数、属主、属组、文件大小、时间戳 ;等同于 ll
ls -R 只显示目录文件及其子文件
ls -a 显示隐藏文件 即.开头的文件
ll -d 显示当前目录本身的额外信息 ; 等同于 ld
ls -T 按文件修改时间从最近开始排序
ll --time=atime 显示的额外信息中的时间戳为最近的读时间
ll --time=ctime 显示为元数据修改时间
ll --time=mtime 显示为文件内容修改时间
ll -i 显示额外信息之外在最前面还显示inode编号
另stat 也可显示文件额外信息、权限以数字形式显示
搜索替换 tr 搜索指定字符替换为其他字符
tr -d ' ' 搜索将引号内字符进行删除
tr -s ' ' 将连续的指定字符进行压缩
tr -c ' ' 取反
文件通配符 用特殊字符串匹配替代文件中字符 匹配文件名可用
* 匹配零个或多个任意字符,不匹配隐藏文件开头的.
? 匹配任意单个字符
~- 匹配上一个目录
[^x] 取反 非x的字符
[x] 匹配文件命中包含x的
[:lower:] 匹配任意小写字母
[:upper:] 匹配任意大写字母
[:alpha:] 匹配任意大小写字母
[:dight:] 匹配任意数字
[:alnum:] 匹配任意数字或字母
[:space:] 匹配垂直空白符 ,水平空白符
I/O管道 重定向
标准输入 0 默认接受来自键盘的输入
标准输出 1 默认输出至终端窗口
标准错误 2 默认输出至终端窗口
| 管道符 ; 将 | 前命令的结果作为标准输给 | 后的命令
> 标准输出重定向 将>前的标准输出结果输出至>后的文件中
< 标准输入重定向
2> 标准错误重定向 将前一个命令回馈的错误或提示信息重定向
&> 标准输出和标准错误一起定向输出至指定文件
| tree > 同时将标准输出重定向至终端窗口和指定文件中
用户 、组 、权限
用户信息配置文件:/etc/passwd ;/etc/shadow
组信息配置文件 :/etc/group ;/etc/gshadow
useradd 创建用户
groupadd 创建组
usermod 修改用户信息
groupmod 修改组信息
userdel 删除用户
groupdel 删除组
useradd -c 添加备注文字
-d 指定家目录
-e 指定帐号有效期
-f 制定密码过期后缓冲天数
-g 指定主组
-G 指定辅组
-m 自动创建家目录
-M 不自动创建家目录
-N 不创建私有组,使用user作为主组
-r 创建系统账号
-s 指定shell
-u 指定uid
chmod 更改权限 可用于文件或目录
chmod u- ,u+ 变更属主权限
g- ,g+ 更改属组权限
o- ,o+ 更改其他类型用户权限
读权限为 r ;写权限为 w ; 指定权限为 x
chown 更改目录或文件的属主,属组
chgrp 更改属组
ACL 灵活的赋予权限,灵活的权限管理
setfacl -m u:mage:rwx file.txt
setfacl -m 修改
-x 删除单个
-b 删除多个
-r 目录递归 目录下子文件及目录将继承父目录ACL权限
-k 删除目录ACL权限
getfacl 显示设置的ACL权限
特殊权限 SUID UGID Sticky
chmod u+s ;u-s 修改属主特殊权限
chmod g+s ;g-s 修改属组特殊权限
chmod o+t ;o-t 修改其他类型用户特殊权限
特殊属性
chattr +i 给某文件加锁,可追加,但不可删除
-i 解除锁定
lsattr 显示某文件设置的特殊属性
文件查看命令
cat 查看文件内容
cat -E 显示每一行的结束符$
-A 显示所有控制符
-n 显示行号
-b 仅有内容的行显示行号
-s 压缩连续的空行
tac 行反向显示
rev 行内的内容反向显示
more 分页查看文件
回车: 翻一行
空格: 翻一页
b : 回翻
less 分页查看文件
PgUp 上翻
PgDn 下翻
/ 搜索
head 显示前几行 默认十行
head -n 指定获取几行
-c 指定获取几个字节
tail 显示后几行 默认十行
tail -c 指定后几个字节
-n 指定几行
-f 跟踪显示 跟踪文件描述符
-F 跟踪显示 跟踪文件名
tailf 类似 tail -f 但是当文件不增长时并不访问文件
cut 显示某一列
-d' ' 指定分隔符
-f 指定第几个字段
cut -- output -delimiter=' ' 指定输出显示的分隔符
paste 两个文件横向合并显示
paste -d' ' 指定分隔符
-s 多行合并为一行
wc 显示文件的夯实、单词数、字节数
wc -l 只计数行数
-w 只计单词数
-L 只计文本中最长行的单词书
-c 只计字节总数
-m 只计字符总数
sort 把文本按字符顺序排序
sort-r 反向排序
-R 随机排序
-n 按数字大小排序
-f 忽略大小写
-u 删除重复行
-t 指定分割符
-k n 按照某一行排序
uniq 从输出中删除连续的重复行
uniq -c 显示重复出现的次数
-d 只显示重复的
-u 只显示不重复的
diff 可同时打开两个文件进行对比
至此