我正在尝试编写一个脚本,如果它已经存在于 js 文件中,它将删除一行代码。我很好奇这是否可能。当脚本运行时,我希望它检查 user_pref("plugin.disable_full_page_plugin_for_types", "application/pdf");
是否存在,如果存在则将其删除。这几乎 100% 的时间都存在。所以我很想知道是否有可能或删除它的命令(如果存在)。
cd /D "%APPDATA%\Mozilla\Firefox\Profiles\*.default"
echo user_pref("browser.cache.check_doc_frequency", 1);>>prefs.js
if (user_pref("plugin.disable_full_page_plugin_for_types", "application/pdf"); !== undefined) {
}
我想问题是 js 文件已经存在,所以我不能将它设置为一个变量,然后再将变量设置为空。
不确定这是否可行任何帮助将不胜感激!
最佳答案
如果您只想从文件中删除包含特定内容的行,那么您可以使用grep
。为此。
# Outputs into prefs.js.new all lines from prefs.js that do not include the string
grep -v 'user_pref("plugin.disable_full_page_plugin_for_types", "application/pdf")' < prefs.js > prefs.js.new
mv prefs.js.new prefs.js
你可以通过寻找 '^user_pref(...
来让它更快,它告诉 grep
在每一行的开头寻找模式,所以它会提前跳过不匹配的行。
如果你在 Windows 上(从 cd/D "%APPDATA%...
判断)那么你可以使用 FIND
。我想你会想使用 /v
反转匹配:
FIND /v 'user_pref("...")' < prefs.js > prefs.js.new
您可能需要尝试使用引号才能使其正常工作。
关于javascript - 使用脚本从 JS 文件中删除文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36068950/