ml常用shell命令 - zhongjiajie/zhongjiajie.github.com GitHub Wiki
来源于8 Useful Shell Commands For Data Science
-
wc: 计数常用的命令,-
wc -l adult.data: 查看文件file_name有多少行 -
wc -w adult.data: 查看文件file_name有多少个子word -
ls -l <folder> | wc -l: 查看文件夹下面有多少个文件
-
-
head: 查看文件开头的部分-
head adult.data: 查看文件开始的部分行,默认是10行 -
head -n 2 adult.data: 查看文件的开始部分,指定了是2行
-
-
cat: 将两个文件合并成一个文件, 并在屏幕输出-
cat file_1 file_2 > dest_file: 将file_1和file_2内容和合并到dest_file中,并将file_2放在file_1后面
-
-
echo: 在屏幕打印相应的内容-
echo zhongjiajie > adult.data: 覆盖源文件的内容 -
echo zhongjiajie >> adult.data: 在源文件adult.data的基础上增加一行zhongjiajie
-
-
sed: 流式修改文件的内容-
sed "s/<string to replace>/<string to replace it with>/g" <source_file> > <target_file>: 将source_file中的内容替换 - 流程一般如下:
grep ", ?," adult.data | wc -w: 查看文件adult.data里面有多少个, ?, -
sed "s/, ?,/,,/g" src_file > dest_file:sed替换内容并命名为dest_file
-
-
head tail混用获取文件中间部分行-
head -n 120 src_file | tail -n 20 > dest_file: 获取src_file的第100-120行
-
-
tail: 获取文件后面n行的情况-
tail -n <number> adult.data: 获取文件adult.data后面的n行
-
-
uniq: 发现重复的行-
uniq不能统计不相邻的重复行,意味着要对部分数据进行sort排序处理 -
uniq -c: 统计重复的行,并把重复次数放在每行第一个字段 -
uniq -d: 统计重复的行,并只显示重复行 -
uniq -u: 统计重复的行,并只显示非重复行 -
sort adult.data | uniq -d | wc -l: 统计adult.data里面重复的行数 -
sort adult.data | uniq -c | sort -r | head -n 3: 统计adult.data里面重复次数最多的top3条记录sort -r反向
-
-
cut: 将文件变成和数据库类似的可进行列操作的文件,-d指定文件切割符,-f指定使用字段的index-
cut -d "," -f 2 adult.data | sort | uniq -c: 按照切割符,切割文件,选择第二个字段,并统计第二个字段的次数
-