猫文件1 foo ice two 猫文件2 bar cream hundred 期望的输出: foobar icecream twohundred file1和file2在我的场景中总是具有相同数量的行,以防止事情变得更容易。
我试图用变量替换文本文件中的字符串。 我正在使用此代码: sed -i “s/search text \/TAG\//replace text ${variable}/” ${textfile} 变量的内容是/newTAG/ 。 并且变量的内容是问题,更准确地说是/在开头和结尾。 当两个/都被删除所以内容只有newTAG一切正常。 我已经尝试了以下内容 sed -i “s/search text \/TAG\//replace text “${variable}”/” ${textfile} sed -i ‘s/search text \/TAG\//replace text “${variable}”/’ ${textfile} 有谁能够帮我? 谢谢
我的输入文件是, ami21 ami65 ami67 ami66 ami88 ami76 ami29 ami55 ami54 ami32 使用单个命令行我需要输出为, ami22 ami66 ami68 ami67 ami89 ami77 ami30 ami56 ami55 ami33 我用了这个命令 awk -vRS=ami ‘{$0=$0+1;ORS=RT}++n’ inputfile > outputfile 但我得到的输出文件为ami21ami65ami67ami66ami88ami76ami29ami55ami54ami32 即所有字符串都写在同一行,没有空格。 任何人都可以给我一些更好的命令行。
这更像是如何使用命令行指令问题而不是如何将项目添加到Unity通知面板。 我必须有一个单行CLI来向com.canonical.Unity.Panel systray-whitelist添加一个新项目。 这样做的标准程序是: sudo gsettings get com.canonical.Unity.Panel systray-whitelist 我们明白了 [‘JavaEmbeddedFrame’, ‘Wine’, ‘Skype’] 然后我们做第二个命令 sudo gsettings set com.canonical.Unity.Panel systray-whitelist “[‘JavaEmbeddedFrame’, ‘Wine’, ‘Skype’, ‘shutter’]” 虽然这很好,但它需要人们从第一行复制并粘贴结果,对于我正在编写的脚本,我想在一个命令中完成。 到目前为止,这就是我所拥有的: sudo gsettings set com.canonical.Unity.Panel systray-whitelist | gsettings get com.canonical.Unity.Panel systray-whitelist | sed -e “s/’]$/,’shutter’]/” | awk ‘NF{print “\”” $0 “\””}’ 我想我错过了一些东西。 首先,我不确定我是否正确地将字符串输入gsettings set函数。 其次,虽然我认为我正在解析gsettings get函数的输出正确,但我不知道如何使用sed在修改结果周围添加“”,所以我不得不将另一个awk命令输入到这个混乱中。 感谢任何有帮助的人。
我尝试使用以下代码用ZZ替换QQ ,但它没有做我想要的: var1=QQ sed -i ‘s/$var1/ZZ/g’ $file 但是,这段代码符合我的要求: sed -i ‘s/QQ/ZZ/g’ $file 我如何在sed使用变量?