目录
引言
- 日常训练模型,发现做的最多的工作就是处理数据,一般都是在服务器上做相应的操作,因此操作系统一般为linux;
- 这几天突然发现,会一些基本的shell命令,可以大大很快地实现一些小功能,比起python更简单高效一些。
常用命令
读取txt内容
dataline=$(cat /root/data/data.txt)
echo ${dataline}
for循环遍历txt中每一行
# 方法一
for line in ${cat data.txt}
do
echo {line}
done
# 方法二
for line in 'cat data.txt'
do
echo ${line}
done
随机取出txt中指定行,并写入txt(只是复制出来)
# 方法一:从test.txt中随机抽取1000条,存入sample_1000.txt,直接在终端运行
$ shuf -n 1000 test.txt > sample_1000.txt
# 方法二:该方法是按序读取,可以结合shuf先随机打乱,再按顺序读取
# sed -n '开始行数,结束行数p' 待截取文件 >> 保存的新文件
$ sed -n '1,1000p' test.txt >> sample_1000.txt
随机打乱txt中文本顺序
$ shuf input_file.txt -o output_file.txt
按行|列合并多个txt文件
$ more ts1.txt //查看文件ts1
1
2
$ more ts2.txt //查看文件ts2
3
4
$ cat ts1.txt ts2.txt // 按行合并
1
2
3
4
$ paste tst.txt ts2.txt //按列合并
1 3
2 4
# 保存合并后的结果
$ cat ts1 ts2 > new_row.txt
$ paste ts1 ts2 > new_col.txt
>和 >> 的用法(输出重定向)
-
> 表示覆盖原文件内容(文件的日期也会自动更新)
-
>>表示追加内容(会另起一行,文件的日期也会自动更新)
总结
- 以上只是最近常用的一些小命令,如有更多好用的,欢迎留言补充哟!