使用 bash 在文件的每一行中添加方括号
add square brackets in each line of the file using bash
我想在文件的每一行中添加方括号。
我正在使用 sed -i "s/\(.*\)/[]/" file_name.txt
命令,但我看到它插入了 2 次方括号,我的输出(只是第一行,每一行都相同)看起来像这样
[[1,1,0,0,0,0,1,0,24,3,0,0,0,0,86,149,149,14,0,0,0,0,32,149,46,16,0,0,1,13,3,33,65,66,0,0,0,0,0,2,149,140,6,0,0,2,62,148,88,24,26,2,0,14,116,148,30,15,1,0,0,1,5,30,56,18,0,0,0,0,0,4,149,46,40,14,0,0,1,34,31,46,149,31,0,2,9,12,1,7,8,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,12,2,0,0,0,0,0,0,0,0,0,0,0,0]]
如何使用 sed 为每一行插入一个方括号?请帮忙。提前致谢!
使用awk
:
awk '{print "["[=10=]"]"}' file_name.txt
您的命令没问题,除非运行两次,否则不应添加 2 [
。也分组,在这种情况下,没必要,取整个模式&
就足够了
sed -i 's/.*/[&]/' file_name.txt
也许,尝试使用您自己的单引号,双引号可能会被 shell
中的其他内容解释
我想在文件的每一行中添加方括号。
我正在使用 sed -i "s/\(.*\)/[]/" file_name.txt
命令,但我看到它插入了 2 次方括号,我的输出(只是第一行,每一行都相同)看起来像这样
[[1,1,0,0,0,0,1,0,24,3,0,0,0,0,86,149,149,14,0,0,0,0,32,149,46,16,0,0,1,13,3,33,65,66,0,0,0,0,0,2,149,140,6,0,0,2,62,148,88,24,26,2,0,14,116,148,30,15,1,0,0,1,5,30,56,18,0,0,0,0,0,4,149,46,40,14,0,0,1,34,31,46,149,31,0,2,9,12,1,7,8,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,12,2,0,0,0,0,0,0,0,0,0,0,0,0]]
如何使用 sed 为每一行插入一个方括号?请帮忙。提前致谢!
使用awk
:
awk '{print "["[=10=]"]"}' file_name.txt
您的命令没问题,除非运行两次,否则不应添加 2 [
。也分组,在这种情况下,没必要,取整个模式&
就足够了
sed -i 's/.*/[&]/' file_name.txt
也许,尝试使用您自己的单引号,双引号可能会被 shell
中的其他内容解释