A. linux中whereis的相关命令
用途:
找到程序的源、二进制文件或手册
语法:
whereis [ -s ] [ -b ] [ -m ] [ -u ] [ { { -S | -B | -M } Directory ... }... -f ] File ..
示例:
要查找 /usr/ucb 目录中的所有文件,这些文件或者在 /usr/man/man1 目录里没有归档或者在 /usr/src/cmd 目录里没有源,请输入:
cd /usr/ucb
whereis -u -M /usr/man/man1 -S /usr/src/cmd -f *
B. Linux系统查看文件内容的命令有哪些
通过命令+文件名查看内容。如下命令可以查看。
1, cat :由第一行开始显示文件内容;
2,tac:从最后一行开始显示,可以看出tac与cat字母顺序相反;
3,nl:显示的时候输出行号;
4,more:一页一页的显示文件内容;
5,less与more类似,但它可以向前翻页;
6,head:只看前几行;
7,tail:只看最后几行;
8,od:以二进制的方式读取文件。
9,vi和vim作为编辑器,也可以打开文件查看内容。
C. linux 怎么看 文件二进制
一、在Linux下查看二进制文件的软件:
xxd (2进制)
hexmp (16进制)
二、编辑:
1、biew
2、hexedit
3、vim
Vim 来编辑二进制文件。Vim 本非为此而设计的,因而有若干局限。但你能读
取一个文件,改动一个字符,然后把它存盘。结果是你的文件就只有那一个字符给改了,
其它的就跟原来那个一模一样。
要保证 Vim 别把它那些聪明的窍门用错地方,启动 Vim 时加上 "-b" 参数:
vim -b datafile
这个参数设定了 'binary' 选项。其作用是排除所有的意外副作用。例如,'textwidth'
设为零,免得文本行给擅自排版了。并且,文件一律以 Unix 文件格式读取。
二进制模式可以用来修改某程序的消息报文。小心别插入或删除任何字符,那会让程序运
行出问题。用 "R" 命令进入替换模式。
文件里的很多字符都是不可显示的。用 Hex 格式来显示它们的值:
:set display=uhex
另外,也可以用命令 "ga" 来显示光标下的字符值。当光标位于一个 字符上时,
该命令的输出看起来就像这样:
27, Hex 1b, Octal 033
文件中也许没那么多换行符。你可以关闭 'wrap' 选项来获得总览的效果:
:set nowrap
字 节 位 置
要发现你在文件中的当前字节位置,请用这个命令:
g CTRL-G
其输出十分冗长:
Col 9-16 of 9-16; Line 277 of 330; Word 1806 of 2058; Byte 10580 of 12206
最后两个数字就是文件中的当前字节位置和文件字节总数。这已经考虑了 'fileformat'
选项导致换行符字节不同的影响。
要移到文件中某个指定的字节,请用 "Go" 命令。例如,要移到字节 2345:
2345go
使 用 XXD
一个真正的二进制编辑器用两种方式来显示文本: 二进制和十六进制格式。你可以在 Vim
里通过转换程序 "xxd" 来达到这效果。该程序是随 Vim 一起发布的。
首先以二进制方式编辑这个文件:
vim -b datafile
现在用 xxd 把这个文件转换成十六进制:
:%!xxd
文本看起来像这样:
0000000: 1f8b 0808 39d7 173b 0203 7474 002b 4e49 ....9..;..tt.+NI
0000010: 4b2c 8660 eb9c ecac c462 eb94 345e 2e30 K,.`.....b..4^.0
0000020: 373b 2731 0b22 0ca6 c1a2 d669 1035 39d9 7;'1.".....i.59.
现在你可以随心所欲地阅读和编辑这些文本了。 Vim 把这些信息当作普通文本来对待。
修改了十六进制部分并不导致可显示字符部分的改变,反之亦然。
最后,用下面的命令把它转换回来:
:%!xxd -r
只有十六进制部分的修改才会被采用。右边可显示文本部分的修改忽略不计。
D. linux 怎么看完二进制文件
查看二进制文件,用od或hexmp命令。
$od-tx1-tc-AxbinFile
abcde12345abcde1
2345abcde12345ab
00002063646531323334350a
cde12345
000029
-tx1选项表示将文件中的字节以十六进制的形式列出来,每组一个字节(类似hexmp的-c选项)
-tc选项表示将文件中的ASCII码以字符形式列出来(和hexmp类似,输出结果最左边的一列是文件中的地址,默认以八进制显示)
-Ax选项要求以十六进制显示文件中的地址
E. Linux可执二进制行文件和库依赖查看方法
1、查看依赖库
1.1、查看可执行文件依赖的库有哪些
举例,查看常用的ls工具,依赖哪些库:
1.2、查看动态库,依赖的库有哪些
举例,查看libcap依赖的库有哪些:
F. linux下如何查看一个二进制文件是使用-O0优化还是-O2优化
gcc默认提供了5级优化选项:
-O/-O0:无优化(默认)
-O1:使用能减少目标文件大小以及执行时间并且不会使编译时间明显增加的优化。该模式在编译大型程序的时候会花费更多的时间和内存。在-O1下:编译会尝试减少代码体积和代码运行时间,但是并不执行会花费大量时间的优化操作。
-O2: 包含-O1的优化并增加了不需要在目标文件大小和执行速度上进行折衷的优化。GCC执行几乎所有支持的操作但不包括空间和速度之间权衡的优化,编译器不执行循环展开以及函数内联。这是推荐的优化等级,除非你有特殊的需求。-O2会比-O1启用多一些标记。与-O1比较该优化-O2将会花费更多的编译时间当然也会生成性能更好的代码。
-Os:专门优化目标文件大小,执行所有的不增加目标文件大小的-O2优化选项。同时-Os还会执行更加优化程序空间的选项。这对于磁盘空间极其紧张或者CPU缓存较小的机器非常有用。但也可能产生些许问题,因此软件树中的大部分ebuild都过滤掉这个等级的优化。使用-Os是不推荐的。
-O3: 打开所有-O2的优化选项并且增加 -finline-functions, -funswitch-loops,-fpredictive-commoning, -fgcse-after-reload and -ftree-vectorize优化选项。这是最高最危险的优化等级。用这个选项会延长编译代码的时间,并且在使用gcc4.x的系统里不应全局启用。自从3.x版本以来gcc的行为已经有了极大地改变。在3.x,-O3生成的代码也只是比-O2快一点点而已,而gcc4.x中还未必更快。用-O3来编译所有的软件包将产生更大体积更耗内存的二进制文件,大大增加编译失败的机会或不可预知的程序行为(包括错误)。这样做将得不偿失,记住过犹不及。在gcc 4.x.中使用-O3是不推荐的。
————————————————
版权声明:本文为CSDN博主「rongming_lu」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/LU_ZHAO/java/article/details/104516291
G. linux系统中怎么看一个二进制的可执行文件的源代码,
您好:
您可以通过which命令查找二进制的绝对位置,例如:
[root@master tmp]# which ls
alias ls='ls --color=auto'
/bin/ls
[root@master tmp]# rpm -qf /bin/ls
coreutils-8.4-31.el6.x86_64
这时候就可以查找到二进制是由哪个软件安装生成,希望能帮到您。
H. linuxfile两次读
多次打开同一文件与O_APPEND:
1、在linux系统下,一个进程中两次打开同一个文件,然后分别读取,这里可以猜想一下它最终的会出现什么情况?我的猜想是----第一种是fd1和fd2分别读(这个意思是对同一文件读操作的时候,文件描述符fd1和fd2分别从一个文件里面读取到相同的内容);第二张是接续读(这个意思是,文件描述符fd1和fd2,在文件描述符fd1读取一个位置,也就是文件指针指向的一个位置,第二个文件描述的文件指针会接着上次文件指针指向的位置继续往后面移动,通俗的讲,就是读取到的文件内容不一样
I. 怎么区分二进制文件 linux
查看文件是否是可执行的属性,是使用ls命令,要加一个-l参数:$ls-l./*#列出当前目录专下的文件,并使用属长信息格式。-rw-r--r--1cheyenneclass37Jan1211:00fichier看上面的系统显示,第一个区域(-rw-r--r--)代表的是文件的属性,第一个字符(这里是-)代表的是文件的类型。-代表普通文件,d代表目录,l是符号链接文件(和Windows下的快捷方式差不多),n代表网络特殊文件,c代表字符设备文件,b代表块设备文件,p代表命名管道。后面的6位是对文件的访问控制。你所说的x属性,是代表可以“执行”这个文件。注意这个“执行”与Windows系统的区别,它代表的仅仅是你有权限去执行它(如果它能够在机器上运行的话)。UNIX系统不使用扩展名来判断文件类型,而是使用file命令。UNIX和DOS一样,如果文件实际并无法执行,它会给出一个出错提示,并返回Shell。比如你现在编写了一个shell脚本(就是DOS下的.bat文件),如果你想执行这个文件,那么你必须拥有这个文件的r和x权限。
J. linux 二进制文件怎么打开
1、在Fedora桌面打开“Applications”差老-“System Tools”-“Terminal”打开命令终端,为vi编辑做准备。