加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash 脚本。find 命令,xargs,awk

发布时间:2020-12-15 21:29:02 所属栏目:安全 来源:网络整理
导读:rm 排除指定文件或文件夹 rm -r !(.git) ? find 命令两个用法 ?find 指定目录 指定条件 指定动作 $ find . -name ‘my*‘ -ls 搜索当前目录中,所有文件名以my开头的文件,并显示它们的详细信息。 find /etc -name "*.conf"find /etc ! -name "*.conf"find /

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 - 目录。?
c - 字符设备文件。?
p - 管道文件。?
l - 符号链接文件。?
f - 普通文件。?

?

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读