bash 脚本。find 命令,xargs,awk
rm 排除指定文件或文件夹 rm -r !(.git) ? find 命令两个用法 ?find <指定目录> <指定条件> <指定动作> $ find . -name ‘my*‘ -ls 搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。 find /etc -name "*.conf" find /etc ! -name "*.conf" find /etc -type d b - 块设备文件。? d - 目录。? ? cut OPTION... [FILE]... 切割?a list of bytes,characters,or fields(比如切割文件,或者多行字符串) cut -d":" -f1 -d 指定分隔符。默认为 tab。 -f 选择第几个域 比如? find *.rmvb | cut -d"." -f1 输出??rmvg扩展的文件名 ? xargs 的一个常见用法 $ ls | xargs -t -i mv {} {}.bak xargs 将前面命令的命令行输出(一般为字符串)作为后个命令的参数。 比如 ls | xargs ls。就是对ls输出的带空格的目录字符串输出作为后一个ls的参数,统一输出。 又比如 ls | xargs -i ls 就是对前面ls输出的每个目录(以空格区分)各自作为 后一个 ls的参数(默认使用{} 代替该参数),分别输出。 而 -t 表示在执行命令前打印该命令。 ? grep??(global search regular expression(RE) and print out the line? 全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。 比如: ls -l | grep ‘^a‘?通过管道对ls -l输出的内容过滤,只显示以a开头的行。 grep ‘test‘ aa bb cc 显示在aa,bb,cc文件中匹配test的行。 grep -v 排除选择。如?ls -l | grep -v ‘^a‘ 。过滤不以 a开头的行。 ? for? in循环 基本格式 for 变量 in 取值列表 do 各种操作 done 比如 for i in {1..100..2} do echo $i done ? ? end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |