如何将文件中除换行符之外的每个字符都复制两遍?它应该看起来像这样:
之前的文件内容:
echo hello world
之后的文件内容:
eecchhoo hheelllloo wwoorrlldd
答案1
使用 sed:
sed 's/./&&/g' yourfile
前任。
$ echo 'echo hello world' | sed 's/./&&/g'
eecchhoo hheelllloo wwoorrlldd
或者,使用 Perl 的字符串乘法运算符:
$ echo 'echo hello world' | perl -lne 'print map { $_ x 2 } split //'
eecchhoo hheelllloo wwoorrlldd
当然可以在 awk 中进行字符串连接,但据我所知,如果没有显式的字符循环就无法进行连接:
$ echo 'echo hello world' | awk 'BEGIN{OFS=FS=""} {for(i=1;i<=NF;i++) $i = $i $i}1'
eecchhoo hheelllloo wwoorrlldd