- ls -d 查看目录属性,通常与-l连用
- ls -i 查看i节点(inode)
- ls -t 按修改时间排序(最新修改在上面)
- ls -r 逆序排序
- mkdir -p 递归创建文件夹
- cp -p 保留文件属性复制
- cat -n 查看文件内容(显示行号)
- tac 倒序查看文件内容
- less 分页查看文件内容(/关键词:搜索,n/p:查看下一个/上一个)
- head -n N:查看文件前N行,默认N=10
- tail -n N:查看文件后N行,默认N=10
- tail -f 动态查看文件末尾内容
- ln -s 创建软链接
- 软链接文件默认拥有lrwxrwxrwx权限
- 硬链接不能跨分区创建、不能针对目录使用、通过i节点识别
- umask -S 查看新建目录/文件默认权限,文件默认没有x权限,抑或
- find 搜索范围 -name 关键词:全词匹配搜索文件名,支持*?模糊搜索
- find 搜索范围 -iname 关键词:忽略大小写
- find 搜索范围 -size +xxx 文件大于xxx个数据块(1个数据块512B=0.5k)
- 数据块为Linux文件最小存储单位
- find 搜索范围 -user username:按用户查找
- find 搜索范围 -group:按用户组查找
- find 搜索范围 -cmin -5:按文件属性搜索,5min内
- amin:访问时间access
- cmin:文件属性change
- mmin:文件内容modify
- find 搜索范围 -type -f:按文件类型查找(f:文件,d:目录,l:软链接)
- find 搜索范围 -user Yolanda -o size -204800
- find 搜索范围 -name init* -a type -f
- -a 两个条件同时满足
- -o 两个条件满足其一
- find 搜索范围 -inum:按i节点查找
- find 搜索范围 -name 关键词 -exec 命令 {} \; 搜索结果执行命令
- find 搜索范围 -inum 11111 -exec rm {} \;
- find 搜索范围 -iname init* -exec ls -l {} \;
- locate 关键词:在文件资料库中模糊查找文件(文件资料库定期更新)
- locate -i:忽略大小写
- updatedb 更新文件资料库(新建文件无法被查找到,需手动更新)
- /tmp目录无法被loacate查找到
- which 查看命令所在目录(别名)
- whereis 查看命令所在目录 & 帮助文档所在目录
- grep 关键词 文件名:文件内容查找
- grep -i 忽略大小写
- grep -n 显示行号
- grep --color=auto 搜索结果颜色显示
- grep -v 反选
- grep -v ^# 文件名 反选以#开头行(忽略注释行)
- man 命令/配置文件名称 查看命令/配置文件的帮助信息
- /关键词:搜索
- man services:查看services配置文件帮助信息(不是配置文件绝对路径)
- 1:命令帮助
- 5:配置文件帮助
- man 5 passwd:查看passwd配置文件帮助信息
- whatis 命令:查看命令简短信息
- 命令 --help:查看命令选项信息
- info 命令:查看命令帮助信息
- help shell内置命令:查看shell内置命令帮助信息(e.g. cd, umask, pwd)
- apropose 配置文件:查看配置文件信息
- who 查看登录用户
- tty表示本地登录
- pts表示远程登录
- w 查看当前用户详细登录信息
- uptime:Linux连续运行时间
- gzip 文件 压缩文件
- gunzip 文件.gz 解压文件
- gzip -d 文件.gz 解压文件
- gzip 只能压缩文件,不能压缩目录,压缩文件不保留原文件
- tar -cvf xxx.tar 打包目录:打包
- tar -czvf xxx.tar.gz 打包目录:打包 & 压缩
- tar -xzvf xxx.tar.gz 解包
- zip Linux & Windows均支持
- Linux不支持rar
- zip压缩比不如gzip
- zip不删除原文件
- zip xxx.zip 文件:压缩文件
- zip -r xxx.zip 目录:压缩目录
- unzip xxx.zip 解压缩(不区分目录/文件)
- bzip2 -k:产生压缩文件后保留原文件(-k:keep)
- bzip2 -k 文件:压缩文件
- tar -cjf xxx.tar.bz2 打包目录:打包 & 压缩
- bunzip2 xxx.bz2 解压
- bzip -d 解压
- tar -xjf xxx.tar.bz2 解包
CHAPTER 10
- echo 输出
- echo -e 输出转义字符
- echo -e “\e[;31m abcd\e[0m” 红色输出abcd
- 30m 黑色
- 31m 红色
- 32m 绿色
- 33m 黄色
- 34m 蓝色
- 35m 洋红
- 36m 青色
- 37m 白色
- cat -A xxx 查看文件内容,包含隐藏字符
- history -c 清空历史命令
- history -w 把缓存中的历史命令写入历史命令保存文件~/.bash_history
- 历史命令默认保存1000条,/etc/profile HISTSIZE
- !n 重复执行第n条命令
- !! 重复执行上一条命令
- !xxx 重复执行最后一条以xxx开头的命令
- alias 别名=‘原名’
- 别名永久生效 vi ~/.bashrc
- 快捷键:
- ctrl + A:光标移到命令行开头
- ctrl + U:删除/剪切光标前的字符
- ctrl + K:删除/剪切光标后的字符
- ctrl + Y:粘贴剪切的内容
- ctrl + R:搜索历史命令
- ctrl + D:退出当前终端
- 命令 >> 文件 2>&1 正确&错误打印重定向到相同文件
- 命令 &>> 文件 正确&错误打印重定向到文件
- 命令 &>/dev/null 输出写入垃圾箱
- 命令 >> 文件1 2>> 文件2 正确&错误打印分别重定向到不同文件
- wc < 文件 输入重定向统计,ctrl + D结束输入
- wc -c 统计字节数
- wc -w 统计单词数
- wc -l 统计行数
- 命令1;命令2 多个命令顺序执行
- 命令1&&命令2 逻辑与,1正确执行,2才会执行
- 命令1||命令2 逻辑或 1不正确执行,2才会执行
- 命令 && echo yes || echo no
- 命令1 | 命令2 1的正确输出作为2 的输入
- set 查看所有变量
- export 设置环境变量,对所有子shell中生效
- export 变量名=变量值
- export 已定义本地变量
- env 查看所有环境变量
- unset 清空本地变量/环境变量
- PATH 系统查找命令的路径,冒号分割的路径列表
- PATH="$PATH":/root/sh PATH变量叠加,临时生效,重启后失效
- PS1 定义系统提示符的变量
- sum=$(($1 + 2 ) ) 使 用 2)) 使用2))使用(())进行数值运算
- read 接收键盘输入
- read -p 输出提示信息
- read -t 等待用户输入时间
- read -n 接受指定字符数
- read -s 隐藏输入的数据
- read -t 30 -p "Please input your name: " name 接受输入保存入变量name
- 算术运算:declare -x cc=a a + aa+aa+bb
- 算术运算:cc=$( expr $aa + $bb )
- 算术运算:cc=$(( $aa + $bb ))
- 算术运算:cc=$[ $aa + $bb ]
- source 配置文件 使配置文件更改生效,不用注销or重新登录
- . 配置文件 使配置文件更改生效,不用注销or重新登录
- 登录时执行的配置文件:
- /etc目录下配置文件,对所有用户生效
- /etc/profile
- /etc/profile.d/*.sh
- ~/.bash_profile
- ~/.bashrc
- /etc/bashrc
- 注销时执行的配置文件:~/.bash_logout
- ~/.bash_history
- 本地终端显示登录信息:/etc/issue,支持转义
- 远程终端显示登录信息:/etc/issue.net,不支持转义
- service sshd restart 重启ssh服务
- 登录后显示登录信息:/etc/motd
CHAPTER 11
- cut -d 分隔符,默认tab
- cut -f 列号
- printf ‘%s\t’ $(cat test.txt)
- awk ‘{printf $2 “\t” $6 “\n”}’
- df -h | awk ‘{printf $1 “\t” $6 “\n”}’
- awk ‘BEGIN{printf “This is a transcript!”} {print $2}’ BEGIN指定在处理数据前先执行动作,仅执行一次
- FS 指定分隔符
- awk ‘BEGIN{FS=":"} END{print “~~end~~”} {print $1 “\t” $3}’ /etc/passwd END在所有动作后执行
版权声明:本文为YolandaGui原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。