Linux 命令
leon_2016
将数据通过链路安全送达目的地,语言、机制只不过是一种手段或者工具。
展开
-
Linux命令 -- 批量修改文件名
1.前言 Linux命令组合,能干你想干的事。2.需求 需要将图2-1几个文件一次性重命名为图2-2 图2-1将其中的*AND*字符替换成*_and_* 3.命令 需要组合命令,合理利用管道。 for i inls *.bin; do mv -f $iecho $i | sed ‘s/AND/and/g’; done #原创 2016-05-25 23:49:38 · 522 阅读 · 0 评论 -
Linux命令 -- sed命令,去除指定字符 ---- ()\-等等
1.命令echo "(hello\) main --- wrd" | sed 's/[()\-]//g'原创 2017-01-05 14:39:34 · 6647 阅读 · 0 评论 -
Linux 查看进程中的线程、及其状态信息
1.前言直接上图2.进程状态信息查看2.1 查看进程2.2 查看线程2.3 查看线程状态原创 2017-01-05 09:55:53 · 3519 阅读 · 0 评论 -
查找系统定义size_t , va_list , va_start , va_end 等不常见宏(变量)头文件所在
1.序在创建一个新项目时,往往我们会使用到如: size_t , va_list , va_start , va_end ,false , true 等不常见宏(变量),经常会报错,说未定义。而这些宏(变量)又不是在标准的glibc库当中实现的,而是gcc中实现/定义。使用man命令压根找不到信息,这里我们需要一点技巧。2.例子这里写代码片原创 2017-11-10 16:00:16 · 1093 阅读 · 0 评论 -
替换某个目录下.c文件内容
1. 找出所有.c文件leon$ find ./ -maxdepth 3 -type f | grep "\.c"./misc/nv_net_udp.c./nv_comm_system.c./util/nv_report_event.c./util/nv_linklist_connect_info.c./transport/net_udp.c./transport/net_tcp.c.原创 2016-10-09 17:03:08 · 442 阅读 · 0 评论 -
完美解决编译缺少文件,apt-file search 命令去查找依赖。
1.序 在交叉编译过程中如果碰到少了什么头文件之类的报错,最好是使用 apt-file search 命令去查找依赖。2.命令 比如: apt-file search /netlink/genl/genl.hwpa_supplicant$ apt-file search /netlink/genl/genl.hlibnl-3-dev: /usr/include/libnl3/netli原创 2017-11-28 15:39:41 · 3648 阅读 · 2 评论 -
查看可执行程序(ELF)或动态库所依赖动态库——ldd脚本分析
1.序 搞清可执行程序(动态库)所依赖的动态库信息是非常有帮助的。2.查看方法系统信息:Linux netview 4.4.0-101-generic #124~14.04.1-Ubuntu SMP Fri Nov 10 19:06:11 UTC 2017 i686 i686 i686 GNU/Linux2.1 使用 ldd# ldd `which gdb`linux-gate.so.1 =>原创 2017-11-24 09:56:25 · 7213 阅读 · 0 评论 -
sed 命令
在makefile 含有 default 行,将libtommath.a 替换为 libtommath.a libtommath.sosed -i '/default/s/libtommath.a/libtommath.a libtommath.so/' makefile在makefile第49行添加 DLIBNAME=libtommath.so:sed -i '49i DLIBNAME=lib原创 2017-11-24 11:24:34 · 368 阅读 · 0 评论 -
应用程序——链接脚本
1.序 应用程序也可以像内核一样按照一定规则的组织模块。通过链接脚本就可以做到。2.查看默认链接脚本 没有链接脚本,程序也是不知道如何在内存当中进行组织的。只不过一般情况下,做应用的程序员不 需要关心而已。leon@netview:~$ leon@netview:~$ ld --verboseGNU ld (GNU Binutils for Ubuntu) 2.24 Sup原创 2017-11-27 17:23:02 · 763 阅读 · 0 评论 -
Linux命令 -- 提取字符串指定字符串之间的字符串
1.例子 提取字符串以下字符串 error: 与 : 之间的子字符串。并消除空格。"src/network/misc/nv_net_udp.c:17: fatal error: nv_net_tools.h: No such file or directory"2.命令echo "src/network/misc/nv_net_udp.c:17: fatal error: nv_net_tools原创 2016-10-10 17:59:11 · 19478 阅读 · 1 评论 -
Linux命令 -- 获取 进程信息:name 、stat 、PID
以 kthreadd 进程为例1.命令⑴ 第一种方式换行输出:echo `ps | grep -v grep | grep kthreadd | sed 's/\/bin\/sh//' | awk '{print $4, $1}' | sed 's/\(^.*\/\)\(.*\)/\2/' | grep kthreadd && cat /proc/$(pgrep kthreadd | se原创 2017-01-05 10:43:25 · 1863 阅读 · 0 评论 -
命令组合-- 获取Linux某进程的运行状态
1.前言获取Linux进程状态的方式有很多种.这里讲两种.2.命令行2.1 第一种情况这种情况使用以下命令即可得出结果:# ps | grep -v grep | grep init | awk '{print $4}'2.1 第二种情况发现少了一列 STAT ,而我们又需要这一列。使用以下命令行:# cat /proc/1/stat这种方式也可以获取状态值。命令行(以下两种方式都可以):# c原创 2017-01-05 09:38:38 · 512 阅读 · 0 评论 -
Linux命令 -- 将某个文件中的字符串小写字母全部转为大写字母
1.前言 有时候要将某个文件字符串进行大小写转换,这条命令还是很方便.2.脚本 将 test.txt 文本中字符串的小写字母全部转为大写字母,另存为 result.txtecho ` cat test.txt | tr '[:lower:]' '[:upper:]' ` > result.txt原创 2016-09-09 19:27:16 · 10231 阅读 · 0 评论 -
批量建立软链接
批量建立软链接 例如以下三个文件: arm-hisiv100-linux-uclibcgnueabi-addr2line arm-hisiv100-linux-uclibcgnueabi-gcc arm-hisiv100-linux-uclibcgnueabi-objcopy**建立软链接如下:**arm-linux-addr原创 2016-08-24 15:36:58 · 1793 阅读 · 0 评论 -
多个shell命令组合
1.概述 在项目开发中,会依赖许多标准库或者头文件。而我们又不知道该库在哪个路径下面,我们可以使用某些编译器所自带的属性来操作。2.命令 ⑴首先 man gcc ,然后 /print ...skipping... -femit-struct-debug-reduced -femit-struct-debug-detailed[=spec-list]原创 2016-08-26 09:40:49 · 916 阅读 · 0 评论 -
Linux命令组合 -- 将make all 编译错误信息重定位到管道输出
1.命令leon$ make clean && make all 2>&1 | grep "error"2016-10-10 18:49:36 (nvc-communication)==>|| INFO : Clean project nvc-communication ...rm -rf ./build/objs/* ./build/lib/* ./build/bin/*2016-10-1原创 2016-10-10 18:55:03 · 1611 阅读 · 0 评论 -
输出警告/错误信息到SecureCRT终端
1. 命令leon$ make clean && make all 2>&1 | grep "warning"2. 示例原创 2016-10-11 17:27:33 · 760 阅读 · 0 评论 -
查找ko文件中text段的某个函数名
1.前言 目的是找到ko_hi3518目录下某个ko文件中是否存在某个函数定义的地方。 如:查找CMPI_CreateProc是在哪个驱动文件中实现的。2.ko_hi3518目录acodec.ko hi3518_ai.ko hi3518_group.ko hi3518_rc.ko hi3518_vda.ko hidmac.ko原创 2016-09-28 10:15:01 · 3421 阅读 · 0 评论 -
Linux命令 - 去掉空格、去掉多余空格、大小写转换、打印列
1.空格 ⑴去掉空格leon@netview:~$ dateFri Sep 30 14:30:55 CST 2016leon@netview:~$ date | sed s/[[:space:]]//gFriSep3014:31:50CST2016⑵去掉多余空格leon@netview:~$ echo "hello world" | tr -s [:space:]hello world原创 2016-09-30 14:42:26 · 17793 阅读 · 0 评论 -
Linux命令 -- find 搜索深度
1.前言 在编译当中经常需要通过-I 来指定头文件搜索路径。2.命令-maxdepth <number> ; number 指定搜索深度.find ./ -maxdepth 3 -type d ! -name '.git' -a ! -name 'build' -a ! -name 'deps' -a ! -name 'patches'3.执行结果././openssl./nvc原创 2016-09-29 16:59:06 · 15284 阅读 · 0 评论 -
Linux命令-dirname、basename
1. 例子leon$ find ./ -maxdepth 3 -type f./misc/nv_misc_pub.h./util/nv_util_pub.h./common/nv_common_pub.h./camera/nv_camera_pub.h./nv_communication.h./transport/nv_transport_pub.h./log/nv_log_pub.h原创 2016-10-08 15:24:04 · 2122 阅读 · 0 评论 -
解决'配置,编译glib-2.26.1库'错误.
1.序 之所以不选最新的glib库,而选glib-2.26.1库,是有原因的,第一最新库依赖的库文件太多,编译出来库文件太大,不太适合flash空间有限的嵌入式设备. 但是在configure ’ glib-2.26.1 ’ 库的时候,碰到了许多问题。此博客记录这些问题及解决方法。 ./configure 出问题,还得找根本原因,看脚本.而configure文件则是autoconfig 自原创 2018-01-02 23:06:37 · 1644 阅读 · 0 评论