sed相关内容
我正在尝试替换配置文件中名为 boots 的包的所有引用. 行格式为add fast (package OR pkg) boots-(any-other-text),例如: 添加快速包boots-2.3添加快速 pkg boots-4.5 我想将其替换为: 添加 yinst pkg boots-5.0 我尝试了以下 sed 命令: sed -e 's/add fast (pkg\|
..
我想使用 grep、awk 或 sed 提取匹配模式后的第 N 行. 例如我有这样一段文字: 修订版:60000
我想提取 60000. 我试过 Revision:([a-z0-9]*)\s*([0-9]){5} 将 Revision 与修订号相匹配,但是当我通过时到 grep:grep Revision:([a-z0-9]*)\s*([0-9]){5} file.ht
..
我正在尝试合并两个文件,如下所示(交集) ID 姓名 电话约翰一书 0112 山姆 0133 耶拿 0144 彼得 015 第二个文件Test2.txt 1 Test1 Test22 测试 3 测试 43 测试 5 测试 64 测试7 测试85 测试7 测试86 测试7 测试87 测试7 测试88 测试7 测试89 测试7 测试8 然后是最终结果 ID 姓名 电话 Remark1 Rem
..
一个表的行被错误地从数据库中删除.我们有一个 db 备份,它会生成一个可以像这样恢复的 sql 文件: psql -h localhost -d proddump -f/Users/U/Desktop/prod_db_backup/PostgreSQL/site_prod.sql 这最终会在本地进行完整还原.但是我们需要的是将单个表的行恢复到生产中.关于如何在 PostgreSQL 9.1 中
..
我想在 bash 脚本中使用三种类型的字符串.我认为 sed/awk 将是我最好的选择,但我不确定.鉴于以下要求,最好的方法是什么? 单字 例如炸玉米饼 ->炸玉米饼 多个单词用连字符分隔 例如my-fish-tacos ->我的鱼炸玉米饼 多个单词用下划线分隔 例如my_fish_tacos ->My_Fish_Tacos 解决方案 没有必要使用捕获组(尽管 &
..
如何使用 awk 或 sed 连接两行? 我有这样的数据: abcd加入abcd哎呀加入艾克尔乔伊克尔 我需要像下面这样的输出: joinabcdabcd加入乔伊克利克尔 解决方案 awk '!(NR%2){print$0p}{p=$0}' infile
..
我有一个包含内容的文件 x一个X乙XC 我想 grep 最后一次出现, xC 当我尝试 sed -n "/x/,/b/p" 文件 它列出了所有行,从 x 到 c. 解决方案 我不确定我的问题是否正确,所以这里有一些黑暗中的镜头: 打印 x 的最后一次出现(正则表达式): grep x 文件 |尾-1 或者: tac 文件 |grep -m1 x 从匹配的第一行到结
..
操作系统:OSX方法:从命令行,所以使用sed,cut,gawk,虽然最好不要安装模块. 本质上,我试图获取 csv 文件的第一列并将其解析为一个新文件. 示例输入文件 EXAMPLEfoo,60,6例如bar,30,6例1、60、3例2,120,6例3、60、6例4、30、6 期望输出 EXAMPLEfoo示例栏例1例2例3例4 所以我想要第一列. 这是我迄今为止尝试过
..
我正在尝试在我的 MacOS 上构建 Android,但它给了我这个错误: "sed: 非法选项 -- r" 我试过: 制作引导镜像制作系统映像恢复早午餐米卡培根 他们都给我同样的错误. 解决方案 另一种选择是使用 homebrew 安装 gnu-sed: brew install gnu-sed --with-default-names
..
好的,我的 linux box 上有两个相关的文本文件列表: /tmp/oldList/tmp/newList 我需要比较这些列表以查看添加了哪些行以及删除了哪些行.然后,我需要遍历这些行并根据它们是被添加还是被删除对它们执行操作. 如何在 bash 中执行此操作? 解决方案 使用 comm(1) 命令比较两个文件.它们都需要排序,如果它们很大,您可以事先进行排序,或者您可以使用
..
我正在尝试使用 sed 将文本插入文件的第三行,我在其他论坛上发现的语法是: sed -i '' "3i\ text to insert" 文件 然而,当我使用它时,我收到一个错误: sed: 1: "3i\ text to insert": i 命令末尾 \ 后的额外字符 我似乎无法弄清楚是什么导致了问题.我正在使用 OSX,这就是为什么我有一个空的 ' ' 作为我的扩展名. 谢谢
..
在sh中如何删除文件中以“string"开头的所有行?我正在考虑使用 sed 命令. 解决方案 grep -v '^string' yourfile.txt >剥离.txt
..
我试图通过去除不必要的空格、空行以及括号与它们之间的空格来平衡我的代码,所以: int a = 4;如果 ((a==4) || (b==5))一个++; 应该改为: int a = 4;如果 ( (a==4) || (b==5) )一个++; 它确实适用于括号和空行.但是,它忘记将多个空格减少到一个空格: int a = 4;如果 ( (a==4) || (b==5) )一个++;
..
我有一个命令输出,我想从中删除双引号 ". 命令: strings -a libAddressDoctor5.so |\grep 引擎版本 |\awk '{if(NR==2)print}' |\awk '{print$2}' 输出: EngineVersion=“5.2.5.624" 我想知道如何使用 awk 或 sed 删除不需要的字符. 解决方案 使用 sed 的替换:s
..
我想在现有的 CSV 文件中添加一行标题,并进行适当的编辑.我该怎么做? echo '一、二、三' >测试文件.csv 我想结束 column1, column2, column3一二三 更改初始 CSV 输出是我无法控制的. 任何标准命令都可以.重要的是文件编辑到位,在文件开头插入行. 解决方案 这会在文件的开头添加自定义文本: echo 'your_custom_esc
..
我想运行一个简单的命令来替换 CSS 文件中相对路径的绝对路径,如下所示: sed -i 's/\/fonts/../fonts/'/Users/sergeybasharov/WebstormProjects/snap/compiled/Content/stylesheets/style.css 它抛出这个 sed: 1: "/Users/sergeybasharov/W ...": 替换命
..
我想用 /etc/sshd_config 中的 Banner/etc/sshd_banner 替换 #Banner none.如果我跑 sudo sed -i "s/#Banner none/Banner \/etc\/sshd_banner"/etc/sshd_config 我收到以下错误 sed: 1: "/etc/sshd_config": 未终止的替代模式 有关如何解决此问
..
我需要什么: 假设我有两个命令,A 和 B,每个命令都返回一个单行字符串(即,一个没有换行符的字符串,除了在最后).我需要一个命令(或管道命令序列)C 将命令 A 和 B 的输出连接到同一行并插入 1 个空格他们之间的性格. 工作原理示例: 例如,假设命令 A 的输出是这里的引号 之间的字符串: “快速" 假设命令 B 的输出是这里的引号 之间的字符串: “棕狐" 然后我
..
我想从给定的文本文件中删除所有空格.是否有任何可用的 shell 命令?或者,如何为此使用 sed. 我想要如下内容: $ cat hello.txt |sed .... 我试过了:cat hello.txt |sed 's///g' .但它只删除空格,而不是制表符. 解决方案 $ man tr名称tr - 翻译或删除字符概要tr [选项]... SET1 [SET2]描
..
我正在寻找一种使用正则表达式批量重命名文件的方法,即 s/123/onetwothree/g 我记得我可以将 awk 和 sed 与正则表达式一起使用,但无法弄清楚如何将它们连接在一起以获得所需的输出. 解决方案 执行重命名操作的一种有效方法是在 sed 管道中构造重命名命令并将它们提供给 shell. ls |sed -n 's/\(.*\)\(123\)\(.*\)/mv "\1
..