正则表达式

  • 容小的偷个懒,太细碎了,爬虫的时候现查吧(捂脸)

find

# 语法格式
find [path] [options] [tests] [actions]
# 示例
$ find . \( -name "_*" -or -newer while2 \) -type f -print

grep 通用正则表达式解析器(General Regular Expression Parser)

# 语法格式
grep [Options] PATTERN [FILES]
# 示例
$ grep -E [a-z]\{10\} words2.txt    # -E 扩展正则表达式,可以不用 \ 做转义符    

自动重定向

  • 使用 cjpeg 程序将一个GIF 文件转换为一个JPEG 文件
$ cjpeg image.gif > image.jpg
  • 批量操作(cjpeg 是来自工具包的程序)
#!/bin/sh
for image in *.gif                  # 遍历所有的 .gif 文件
do
  cjpeg $image > ${image%gif}jpg    # %gif 删除后缀,保留“文件名”和“.”,替换进 ${}
                                    # 删除后,结果是 “image.”
done

ed 编辑器 (sed 没看)

#!/bin/sh
ed a_text_file << !FunkyStuff!      # 标识头,可用(单双)引号
                                    # 不用引号,变量会扩展(替换其值),用引号,保持原样
3                # 移动到第 3 行                
d                # 删除当前行
.,\$s/is/was/    # .,\$ 从当前行到最尾;   s 替换;    /is/was  is换成was <-- /旧/新
w                # 写入,保存
q                # 退出
!FunkyStuff!                        # 标识尾
exit 0

sed 更简洁

#!/bin/sh
# 删除第3行,然后从第3行开始替换
sed -i '3d; 3,$ s/is/was/' a_text_file     # -i 直接修改原文件
                                           # 不加 -i,只在终端显示结果,原文件不会被实际修改
posted on 2026-02-02 20:07  中年二班  阅读(3)  评论(0)    收藏  举报