shell大文件读取并处理的问题
2013-04-27 11:33
211 查看
有个文件在/tmp/t.unl下
里面有800万行的数据,每行有8位数字,比如:
00000001
00000002
00000003
00000004
....
这些数字是对应在
/work/0000/00000001
/work/0000/00000002
/work/0000/00000003
/work/0000/00000004
下的文件
求一脚本,使得删除,存在/tmp/t.unl中,并在/work/0000/目录下该文件名的文件。“0000”是“00000004”的前4位
原方案使用
cat /tmp/t.unl |while read tmpf
do
rm the file
done
结果效率非常低,要跑几个小时,怎么才能提高效率呢?
try:
sed 's,^,rm -rf /work/0000/,' /tmp/t.unl >/tmp/t_unl_rm.sh
. /tmp/t_unl_rm.sh
复制代码
awk '{system("rm -f /work/"substr($0,1,4)"/"$0)}' /tmp/t.unl
sed 's#....#/work/&/' /tmp/t.unl | xargs rm
里面有800万行的数据,每行有8位数字,比如:
00000001
00000002
00000003
00000004
....
这些数字是对应在
/work/0000/00000001
/work/0000/00000002
/work/0000/00000003
/work/0000/00000004
下的文件
求一脚本,使得删除,存在/tmp/t.unl中,并在/work/0000/目录下该文件名的文件。“0000”是“00000004”的前4位
原方案使用
cat /tmp/t.unl |while read tmpf
do
rm the file
done
结果效率非常低,要跑几个小时,怎么才能提高效率呢?
try:
sed 's,^,rm -rf /work/0000/,' /tmp/t.unl >/tmp/t_unl_rm.sh
. /tmp/t_unl_rm.sh
复制代码
awk '{system("rm -f /work/"substr($0,1,4)"/"$0)}' /tmp/t.unl
sed 's#....#/work/&/' /tmp/t.unl | xargs rm
相关文章推荐
- shell脚本格式问题导致读取不到文件状态
- 解决java读取大文件内存溢出问题、如何在不重复读取与不耗尽内存的情况下处理大文件
- shell脚本,每次读取文件的一行,逐行读取并处理
- Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法
- 如何处理ODBC中EXCEL驱动读取EXCEL文件中字段长度大于255字符时出现的"数据截断"问题.
- 优化读取的异步文件过多问题(方案:对于已经处理过的文件可以选择移除到备份文件夹下,避免处理前遍历文件过多)
- Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法
- iphone阅读器,如果要读取一个文本文件,请问你是如何处理编码问题的?另外像pdf格式的文件,你如何读取。?
- shell脚本,每次读取文件的一行,逐行读取并处理
- 解决java读取大文件内存溢出问题、如何在不重复读取与不耗尽内存的情况下处理大文件
- Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法
- Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法
- shell 按行读取文件的问题
- 解决java读取大文件内存溢出问题、如何在不重复读取与不耗尽内存的情况下处理大文件
- Shell :文件读取 只读取第一行后 莫名退出的问题
- 通过Shell脚本读取properties文件中的参数时遇到\r换行符的问题
- 如何处理Oledb中EXCEL驱动读取EXCEL文件中字段长度大于255字符时出现的"数据截断"问题.
- 解决java读取大文件内存溢出问题、如何在不重复读取与不耗尽内存的情况下处理大文件
- Java读取Unicode文件(UTF-8等)时碰到的BOM首字符问题,及处理方法
- 读取文件问题