3周主要内容总结

    xiaoxiao2025-08-12  4

    一、文本处理工具 1.grep

    基本语法: grep [options] pattern [files] 参数 : -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。 -o 或 --only-matching : 只显示匹配PATTERN 部分。 -c 或 --count : 计算符合样式的列数。 -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。 相当于egrep

    2.cut :

    语法格式:cut [-bn] [file] 或 cut [-c] [file] 或 cut [-df] [file] 主要参数: -c :以字符为单位进行分割。 -d :自定义分隔符,默认为制表符。

    4.tr: 格式:tr [选项]… SET1 [SET2]

    从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。 主要参数: -c, -C, --complement 首先补足SET1 -d, --delete 删除匹配SET1 的内容,并不作替换 -s, --squeeze-repeats 如果匹配于SET1 的字符在输入序列中存在连续的 重复,在替换时会被统一缩为一个字符的长度 -t, --truncate-set1 先将SET1 的长度截为和SET2 相等 --help 显示此帮助信息并退出 --version 显示版本信息并退出

    4.sed: 命令格式: sed [选项] sed编辑命令 输入文件 shell 命令 | sed [选项] sed编辑命令、 sed [选项] -f sed脚本文件 输入文件 sed的常用选项:

    -n:只显示匹配处理的行(否则会输出所有) -e:执行多个编辑命令时(一般用;代替) -i:直接在文件中进行修改,而不是输出到屏幕(此时不要接-n或-p命令,会导致源文件出问题) -r:支持扩展正则表达式 -f:从脚本文件中读取内容并执行(文件中的编辑命令每行一个,不用;隔开) sed的常用编辑命令: p:打印匹配行 print d:删除指定行 delete a:在匹配行后面追加 append i:在匹配行前面插入 insert c:整行替换 r:将文件的内容读入 read w:将文本写入文件 write s:字符串替换(匹配正则表达式)substitution

    二、shell基础: $* 所有位置参数 $# 参数个数 $0 表示脚本的名字,默认带路径

    bash -n 或bash -x调试程序 [ [ ] ] 相当于test 此时要注意中外层括号 必须前后有空格 =~ 用于匹配正则表达式 0表示为真 而 非0为真! if语句,如果是则than 否则else fi

    三、文件查找: 1.find命令是用来在给定的目录下查找符合给定条件的文件

    格式:find [OPTIONS] [查找起始路径] [查找条件] [处理动作] OPTIONS参数-P、-L、-H:控制软连接的对待方式,

    1>根据名称查找 -name “PATERN”

    2>根据文件从属关系查找:

    -user USERNAME:查找属主指定用户的所有文件;         -group GRPNAME:查找属组指定组的所有文件;

    -uid UID:查找属主指定的UID的所有文件;         -gid GID:查找属组指定的GID的所有文件;

    3>根据文件的类型查找:

    -type:根据不同的文件类型筛选

    4>根据文件的大小查找:

    -size

    5>根据权限查找

    -perm

    四、打包压缩

    1.tar

    -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

    2.cpio

    打包有如下多种情况:

    A)含子目录打包:

    find /usr/lib -print cpio -o〉/u0/temp1.cpio

    将/usr /lib目录下的文件与子目录打包成一个文件库为/u0/temp1.cpio。

    若通过-o选项来打包整个目录下的所有文件与子目录,常先利用find目录名-print来找出所有文件与子目录的名称,通过管道“ ”传给cpio打包。

    B)不含子目录的打包:    ls /usr/lib cpio -o > /u0/temp1.cpio

    将/usr/lib目录下的文件(不含子目录下的文件)打包成一个文件库为/u0/temp1.cpio。

    C)特定文件打包:    可利用文本搜索命令grep与管道配合,可以排除或选择特定类型的文件传给cpio打包。 如:ls /usr/lib/*.c cpio -o〉/u0/temp1.cpio    或ls /usr/lib grep ′.c$′ cpio -o〉/u0/temp1.cpio

    最新回复(0)