手机版
你好,游客 登录 注册
背景:
阅读新闻

几个与文本处理相关的Linux命令总结

[日期:2018-10-22] 来源:Linux社区  作者:MRIVANDU [字体: ]

1.当前目录下有若干文件,找出扩展名为TextGrid的所有文件,并复制到…/file_set。
find . -name "*.TextGrid" \-exec cp {} ../file_set/ \;

2.当前目录下有若干文件,找出扩展名为“TextGrid”且非UTF-8(UTF-8 Unicode Text,with CRLF line terminators)编码的文件,并将其移动到…/trash。该类型的文件命名规则为16位随机数字。
for s_file in `for t_file in $(ls *.TextGrid);do file $t_file|grep -v "UTF-8 Unicode Text,with CRLF line terminators"|grep -o -E [0-9]{16}\.TextGrid;done` do mv $s_file ../trash ;done

3.产生一个含有大写字母和数字长度为8的随机字符串。
echo $RANDOM|md5sum|tr -t [a-z] [A-Z]|cut -b 1-8

4.批量删除文本中以某指定字符串匹配的行。
sed -i '/^sid/d' test.txt

5.查看系统中所有人可读写执行的不安全文件。
find / -perm 777 -a \! -type s -a \! -type l -a \! \( -type d -a -perm 1777 \)

6.当前目录中有300个文件,现需要从该批文件中随机选取100个并移动到上层目录to_dir中。
for $files in `ls|sort --random-sort|head -n 100`;do mv $files ../to_dir/ ; done

7.当前目录有若干UTF-8带BOM的文件,需删除这些文件中的BOM。
for files in `ls`;do sed -i 's/\xEF\xBB\xBF//g' $files ;done

8.当前目录下有若干UTF-8文件,使用file命令查看,显示“UTF-8 Unicode (with BOM) text”,找出非该类文件,并查看他们的内容。
file *|grep -v "UTF-8 Unicode (with BOM) text"|awk -F ":" '{print $1}'|xargs cat

9.当前目录下有一批UTF16BE的文件,需转换成UTF-8,转换完成后需将新文件保存到上层目录to_dir中。
for files in `ls`; do iconv -f UTF16BE -t UTF-8  -o ../to_dir/$files $files;done

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2018-10/154957.htm

linux
相关资讯       Linux文本处理命令 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款