PHP或Linux Shell:将文本文件减少到最后10个字符的最快方法

时间:2012-07-25 21:18:13

标签: php linux

我需要在PHP或Linux命令外壳中以最快的方式将文本文件缩减为仅保留最后10个字符。为了清楚起见,我需要在同一个文件上进行缩减。

谢谢:)

4 个答案:

答案 0 :(得分:4)

Shell tail命令:

tail filename.txt --bytes 10 > filename.txt

答案 1 :(得分:1)

这是一个PHP解决方案 - 但是,如果您不希望从PHP脚本中执行此操作,请更好地使用shell解决方案。

寻找文件末尾减去10个字节(假设一个字符是一个字节),然后用最后十个字符覆盖文件:

$fp = fopen('filename', 'a');
fseek($fp, -10, SEEK_END);
$data = fread($fp, 10);
fclose($fp);
file_put_contents('filename', $data);

答案 2 :(得分:1)

我想这更短:)

tail -c 10 filename.txt > filename.txt

答案 3 :(得分:0)

带来一些多样性:)

dd if=./filename.txt of=./result.txt bs=1 skip=$((`wc -c < filename.txt`-11))