linux下打乱文本行序与分割文本

2017-09-14 11:32:40来源:CSDN作者:lucky_ricky人点击

分享

一linux下,将train.txt按行打乱,每行内容则保持不变,直接将输出写入新的文本train_rand.txt,命令:

shell copy
  1. sudo awk 'BEGIN{ 100000*srand();}{ printf "%s %s/n", rand(), $0}' train.txt |sort -k1n | awk '{gsub($1FS,""); print $0}' > train_rand.txt  

srand(); rand()在awk内获取随机数
gsub替换文本


将一个大文本拆分为几个小文本可以用split,命令:

split -l n 原始文件 拆分后文件名前缀

最后一个文件的行数没有n行则以剩余行数进行分配,比如有一个名为train.txt的文件,公有210行,进行拆分:


shell copy
  1. split -l 100 train.txt train_split

拆分后会生成三个文件,最后一个文件仅剩下10行

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台