我正在编写一个bash脚本,需要获取文件的头(前10个字节),然后在另一个部分中获取除前10个字节之外的所有内容.这些是二进制文件,将有可能\0的,并\n在整个前10个字节的.似乎大多数实用程序都使用ASCII文件.实现这一任务的好方法是什么?
在Linux桌面(RHEL4)上,我想从大文件(> 1 Gig)中提取一系列字节(通常小于1000).我知道文件的偏移量和块的大小.
我可以编写代码来执行此操作但是有命令行解决方案吗?
理想情况下,例如:
magicprogram --offset 102567 --size 253 < input.binary > output.binary
Run Code Online (Sandbox Code Playgroud) 在下面的命令中,我同时启用文件/dev/tcp/10.10.10.1/80读写功能并将其与文件描述符3关联:
$ time exec 3<>/dev/tcp/10.10.10.1/80
bash: connect: Operation timed out
bash: /dev/tcp/10.10.10.1/80: Operation timed out
real 1m15.151s
user 0m0.000s
sys 0m0.000s
Run Code Online (Sandbox Code Playgroud)
这将自动尝试执行TCP三向握手。如果如上例所示无法访问10.10.10.1,则connect系统调用将尝试连接75秒钟。这75秒的超时时间是由确定的bash吗?还是该系统默认?最后但并非最不重要的一点是,有没有办法降低此超时值?