不会linuxshell命令真可怕

本文分享了两种在内核源代码中查找特定字符串的方法:一种是通过编写shell脚本来实现自动化搜索;另一种则是利用find结合xargs和grep命令一行完成。这两种方法对于初学者和经验丰富的开发者都有一定的参考价值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了在内核源代码中定位一个字符串,不会shell的我果断悲剧。

对比一下,不会shell的同志加油啦! 



1)我自己写一个定位设立了:


#!/bin/sh


#列出源码下所有的头文件和有的源文件


KEY_WORD=$1
#echo ${key_word}
#获得当前目录
PWD=$(pwd)


#存储的文件
FILE_LOAD="${PWD}/find_tmp.txt"
FILE_RESULT="${PWD}/result_tmp.txt"


#得要当前目录下的所有文件
find ${PWD} >${FILE_LOAD}


#得到总共有多少文件
LINE_CNT=$( wc -l ${FILE_LOAD} | cut -d ' ' -f 1)
echo "LINE_CNT = ${LINE_CNT}"


for i in $(seq ${LINE_CNT})
do
  LINE=$(sed -n "${i}p" ${FILE_LOAD})
  if grep ${KEY_WORD} ${LINE}
  then
     echo ${LINE} >>${FILE_RESULT}
     echo  >>${FILE_RESULT}
     echo  >>${FILE_RESULT}
     echo  >>${FILE_RESULT}
  fi 
done

rm -f ${FILE_LOAD}
cat ${FILE_RESULT}
rm -f ${FILE_RESULT}




2)大牛指点就一句话:(情何以堪)


find ./* | xargs grep "keyword"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值