Bash脚本改变卷曲支撑风格

时间:2010-12-23 18:56:33

标签: linux bash sed curly-braces

我有一个CSS文件和一个我从海外外包合作伙伴那里收到的PHP文件。他喜欢在一条新线上使用花括号,而我更喜欢Old School,并且更喜欢与宣言相同的花括号。如何使用Bash和/或sed或其他命令行工具将这种新样式的花括号恢复为旧样式?

编辑:有人想看一个例子。好的,这里有:

新学校风格我不喜欢

body 
{
padding:4px;
margin:3px;
}

老学校我喜欢

body {
padding:4px;
margin:3px;
}

新学校风格我不喜欢

function foo() 
{
// some code here
}

老学校风格我喜欢

function foo() {
// some code here
}

2 个答案:

答案 0 :(得分:3)

 sed 'N;/\n{/s// {/;P;D' file.css

输入

$ cat file.css
body
{
background-color:#d0e4fe;
}
h1
{
color:orange;
text-align:center;
}
p
{
font-family:"Times New Roman";
font-size:20px;
}

输出

$ sed 'N;/\n{/s// {/;P;D' file.css
body {
background-color:#d0e4fe;
}
h1 {
color:orange;
text-align:center;
}
p {
font-family:"Times New Roman";
font-size:20px;
}

答案 1 :(得分:0)

一个开始可能是:

sed 'N;/\n{/s/\n/ /;P;D' inputfile

如果一行以大括号开头,则会将其附加到上一行(添加空格)。