我正在尝试找出将api详细信息插入到预先存在的配置中的最佳方法.我想过sed用于将api文本文件的内容插入config.inc文件的底部.我已经启动了脚本,但它不起作用,它擦除了文件.
#!/bin/bash
CONFIG=/home/user/config.inc
API=/home/user/api.txt
sed -e "\$a $API" > $CONFIG
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我有一个看起来像这样的文件:
AE United Arab Emirates
AG Antigua & Barbuda
AN Netherlands Antilles
AS American Samoa
BA Bosnia and Herzegovina
BF Burkina Faso
BN Brunei Darussalam
Run Code Online (Sandbox Code Playgroud)
我想颠倒订单,先打印除1美元以外的所有商品,然后再打印1美元:
United Arab Emirates AE
Run Code Online (Sandbox Code Playgroud)
我怎么能做"除了场1之外的一切"技巧?
我正在使用egrep -R一个包含大约10个联合的正则表达式,所以像:
.jpg | .png | .gif等.这很好用,现在我想替换所有找到的字符串.bmp
我在想类似的东西
egrep -lR "\.jpg|\.png|\.gif" . | sed "s/some_expression/.jpg/" file_it_came_form
Run Code Online (Sandbox Code Playgroud)
所以这里的问题是我如何做一个类似的联合正则表达式sed,如何告诉它将更改保存到它从中获取输入的文件.
我对Sed一无所知但是需要这个命令(在Ubuntu上运行正常)才能在Mac OSX上运行:
sed -i "/ $domain .*#drupalpro/d" /etc/hosts
Run Code Online (Sandbox Code Playgroud)
我越来越:
sed: 1: "/etc/hosts": extra characters at the end of h command
Run Code Online (Sandbox Code Playgroud) 使用sed,打印前n个字符的单个衬垫是什么.我正在做以下事情.
grep -G 'defn -test.*' OctaneFullTest.clj | sed ....
Run Code Online (Sandbox Code Playgroud) sed "s/\(.*\)/\t\1/" $filename > $sedTmpFile && mv $sedTmpFile $filename
Run Code Online (Sandbox Code Playgroud)
我期待这个sed脚本插入每行的字体中的选项卡,$filename但它不是.由于某种原因,它插入而不是..奇怪..
我有以下数据,我需要把它全部放在一行.
我有这个:
22791
;
14336
;
22821
;
34653
;
21491
;
25522
;
33238
;
Run Code Online (Sandbox Code Playgroud)
我需要这个:
22791;14336;22821;34653;21491;25522;33238;
Run Code Online (Sandbox Code Playgroud)
这些命令中没有一个完美地运行.
他们中的大多数都让这样的数据:
22791
;14336
;22821
;34653
;21491
;25522
Run Code Online (Sandbox Code Playgroud) 我如何在sed(或任何类似的工具 - 例如awk)中混合模式和数值范围?我想要做的是匹配文件中的某些行,并在继续之前删除接下来的n行,我想将其作为管道的一部分.
做一些流编辑来改变令人讨厌的Parallels图标.它开发得很差并嵌入到应用程序本身而不是图像文件.所以我找到了这个有很好反馈的sed命令:
sudo sed -i.bak s/Parallels_Desktop_Overlay_128/Parallels_Desktop_Overlay_000/g /Applications/Parallels\ Desktop.app/Contents/MacOS/prl_client_app
Run Code Online (Sandbox Code Playgroud)
它回来了 sed: RE error: illegal byte sequence
有谁能解释这意味着什么?命令的哪个部分是问题?
如何将包含斜杠的变量作为模式传递给sed?
例如,如果我有以下变量:
var="/Users/Documents/name/file"
Run Code Online (Sandbox Code Playgroud)
我想把它传递给sed:
sed "s/$var/replace/g" "$file"
Run Code Online (Sandbox Code Playgroud)
但是我得到错误.我该如何规避这个问题?