学习的内容来自于Linux Shell脚本攻略(2)
内容只做了简单的记录,方便自己学习
shell 命令查询地址:http://man.linuxde.net/
查看
cat file1 file2 file3 .... cat读取文件内容
cat -s filename 摆脱多余的空白行
排查错误,将制表符标记成^|
TAB后的制表内容被标记成为了^I
如果有些没有被标记出来 则表示格式不正确
显示行号 cat -n filename
-n 可以打印空白行,而-b不打印空白行
文件查找与文件列表
find base_name
base_name表示需要搜索文件的路径 .表示当前路径,..表示父目录
find . -print 指明打印出匹配的文件名(路径)
-print 0 指明使用'\0' 作为匹配的文件名之间的定界符。当文件名中包含换行符时。
1.根据文件名或正则表达式搜索
find base_name -name filename
find base_name -iname filename 忽略大小写
-maxdepth 定义查找多少级别的目录(查找深度)最多
-mindepth 定义查找多少级别的目录(至少)
-type 定义查找类型
普通文件 f
符号链接 l
目录 d
字符设备 c
块设备 b
套接字 s
FIFO p
-atime 根据访问时间查找 恰好
-mtime 根据修改时间查找(修改内容) 恰好
-ctime 根据变化时间查找(修改数据) 恰好
单位是天,整数值
-amin
-mmin
-cmin
单位是分
-newer 举例一个文件与其对比找出修改时间更近的所有文件
-size 根据文件大小。
find -type f -size +2k 大于2k的文件
find -type f -sizhe -2k 小于2k的文件
b 块 (512字节)
c 字节
w 字(2字节)
k 1024字节
M 1024K字节
G 1024M字节
-delete 删除
-exec 后面可以跟命令结尾。因此必须以分号结尾
但是之呢个够接受单个命令
shell xrags
xargs 的作用类似于find 命令中的-exec
1.将多行转变成为单行
-n表示每行 n个参数
-d xx 以xx为分隔符分割 并显示
Shell tr
替换文本
根据文本集,删除文本
-c 可以理解为-d的补集
-s 压缩
tr可以像使用集合一样使用各种不同的字符类,这些字符类如下所示
alnum : 字母和数字
alpha 字母
cntrl 控制(非打印)字符
digit 数字
graph 图形字符
lower 小写自摸一
print 可打印字符
punct 标点符号
space 空白字符
upper 大写字母
xdigit 十六进制字符
校验和与核实
md5sum 加密
加密多个
使用 -c来校验加密的内容是否正确并输出校验的内容
加密工具与散列
crypt 、gpg、base64、md5sum、sha1sum、openssl的用法
crypt是一个简单的加密工具,他从stdin < 接受一个文件以及口令作为输入,然后将加密数据输出到studout
进入权限
su -
sudo su
Sort排序
sort - n filename 安装数字顺序排序
sort -r filename 按照逆序进行排序
sort -M filename 按照月份排序
sort -m sorted1 sorted2 合并已经排序过的两个软件
sort filename filename | uniq 找出已排序文件中不重复的行
sort -C filename 检查文件是否已经排序过
sort -nr - k 1 filename -k 定义那一列
uniq 只能作用于关于排过序的数据输入
uniq命令通过消除重复内容,从给定输入中找出唯一的行,他也可以用来找出输入中出现的行
uniq -u 只显示唯一的行
uniq -c 要统计各行在文件中出现的次数
uniq -d 找出文件中重复的行
uniq -s 指定可以跳过前n个字符
uniq -w 指定用于比较的最大字符
临时文件命名与随机数字
最时候存储临时数据的位置时\tmp(该目录的内容在系统重启后会被清空)
1)创建临时文件
2)创建临时目录
3)如果仅仅时想生成文件名,有不希望创建实际的文件或目录
4)根据模板创建临时文件