linux - 搜索和替换服务器中的所有文件
问题描述
我想搜索这一行:
<script type="text/javascript" src="//example.com/file.php?zoneid=112" async data-cfasync="false"></script>
并将其删除/替换为空白。
我可以在 linux 上运行什么命令行来搜索和替换服务器上所有文件的这个词?
解决方案
我使用了grep
和的组合sed
string_to_replace='<script type="text/javascript" src="//example.com/file.php?zoneid=112" async data-cfasync="false"></script>'
首先只需运行该grep
语句以确保您匹配正确的字符串和文件。如果一切看起来都不错,则运行以下命令;
grep -Inr "${string_to_replace}" | while read line; do filename=`echo $line | cut -d ":" -f 1`; line_no=`echo $line | cut -d ":" -f 2`; sed "${line_no}d" -i $filename; done
在grep
, -I将忽略二进制文件,-n将打印行号,-r将进行递归搜索。
让我知道是否有问题。
推荐阅读
- numpy - 为什么当我创建一个随机数组时会出现负值 - “np.random.rand”
- django - 在图形右侧绘制短划线图形输入
- c# - 如何控制在主菜单中所做的音频更改也应用于游戏场景音频设置?
- java - Eclipse - 调试器不会在 xTend 代码断点处停止,但可以在 java 代码断点处停止
- php - Laravel 错误:找不到用于多重身份验证的类 'App\Http\Controllers\Auth\Auth'
- swift - 如何在 Swift Xcode 中取消 Firebase 查询
- windows - 如何知道 Windows 驱动程序字母更改
- java - Android Studio-Java RecyclerView 显示的视图(持有者)多于房间数据库中的行数
- amazon-web-services - 嵌套工作流 - 请求中包含的安全令牌无效
- javascript - 如何在西班牙语中添加 MultiDatesPicker?