shell 将大文件平均分割成指定数量的小文件
split -d -a 4 -l ${every_file_row} hello.csv --additional-suffix=.csv hello_split_
参数解释:
-d表示添加数字后缀
-a表示后缀长度,这里为4,默认为2
-l表示按行分割,后面变量为上面求的行数
–additional-suffix=.csv表示每一个文件后面添加.csv
hello_split_表示路径和前缀,路径可以更改为其他路径,比如/home/user1/hello_split_
结果:
hello_split_0000.csv
hello_split_0001.csv
hello_split_0002.csv
hello_split_0003.csv
hello_split_0004.csv
hello_split_0005.csv
hello_split_0006.csv
hello_split_0007.csv
hello_split_0008.csv
hello_split_0009.csv
批量杀死进程
ps -ef | grep python | grep -v grep|awk '{print "kill -9 "$2}' | sh
或者
pidlist=`ps -ef |grep kettle |grep -v grep|awk '{print $2}'`
kill -9 $pidlist
解释:
ps -ef | grep python 找到进程名包含python的进程
awk '{print "kill -9 "$2}' ,命令 awk '{print $2}' 表示输出第二列的进程PID。如下图所示:
sh 表示执行打印出来的这些命令
在Linux使用grep命令,从文件中抓取显示特定的信息,如下:
cat 文件名 | grep 特定条件
cat xxxx | grep 12345
结果报错:
Binary file (standard input) matches;经过查询后,意思为文件是二进制文件,不能直接grep
解决办法:
cat 文件名 | grep -a 特定条件
cat xxxx | grep -a 12345
打乱一个文本文件的所有行
shuf input_file.txt -o output_file.txt
创建软链接
ln -s [源文件或目录] [目标文件或目录]
# 例:当前路径创建test 引向/var/www/test 文件夹
ln –s /var/www/test test
#创建/var/test 引向/var/www/test 文件夹
ln –s /var/www/test /var/test