我有一个 67GB 的 .csv 文件(我知道...我知道...)
我需要从文件中删除第 4,125,878 行,因为它已损坏。我的 CSV 解析工具不会忽略或跳过它。
我可以用sed
做类似的东西
sed '4125878d' in.csv > out.csv
但就时间和磁盘空间而言,这将是一项非常昂贵的操作。
如果我使用sed -i '4125878d' in.csv
,则操作需要很长时间。
有没有办法可以快速从一个大文件的中间删除一行?
我有一个用PDF Sandwich创建的 PDF 。PDF 的每一页都包含一个背景图像和一些前景文本。
\n我想减小背景图像的文件大小(而不是分辨率) - 并保留可选择的文本。
\nconvert
减小尺寸,但会删除文本。ps2pdf
不会显着减小文件大小。gs -sDEVICE=pdfwrite -dPDFSETTINGS=/screen \xe2\x80\xa6
降低分辨率,但似乎没有重新压缩图像。qpdf --compress-streams=y --recompress-flate --optimize-images in.pdf out.pdf
只会产生微小的差异。如果我提取背景图像并使用pngquant
或类似的图像,文件大小会大大减小。但我无法使用新图像来替换旧图像。
有什么方法可以压缩 PDF 中的图像,同时保持文本完整吗?
\n正如评论中所建议的,运行pdfimages -list output.pdf
给出:
\npage num type width height color comp bpc enc interp object ID x-ppi y-ppi size ratio\n--------------------------------------------------------------------------------------------\n 1 0 image 3483 4800 rgb 3 8 jpeg no 11 …
Run Code Online (Sandbox Code Playgroud) 我想授予我的网站从 Dropbox 子文件夹读取文件和文件夹的权限。
我想我已经添加了正确的权限,但我无法让www-data
用户访问文件夹。
$ cd /home/edent/Dropbox
$ ls -la
total 9944
drwxrwxr-x 6 edent edent 4096 Aug 14 2012 .
drwx------ 67 edent edent 20480 Feb 27 09:11 ..
drwxrwxr-x+ 772 edent www-data 118784 Jan 29 20:45 Foo
drwxrwxr-x 4 edent edent 4096 Aug 14 2012 Bar
Run Code Online (Sandbox Code Playgroud)
的所有子文件夹和文件Foo
也是drwxrwxr-x+ edent www-data
所以,我切换到用户,www-data
但它没有访问这些文件和文件夹的权限!
$ sudo su www-data
$ groups
www-data
$ id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
$ cd /home/edent/Dropbox/Foo
sh: 3: cd: can't …
Run Code Online (Sandbox Code Playgroud) acl ×1
apache-httpd ×1
command-line ×1
compression ×1
csv ×1
files ×1
pdf ×1
permissions ×1
sed ×1