我正在寻找这样的东西。我有一个demo.txt文件,其中包含
后面的单词bold
code
make
links
placing
line
return
我愿意达到的结果
bold
code
make
links
placing
line
return
bold code
code make
make links
links placing
placing line
line return
bold code make
code make links
make links placing
links placing line
placing line return
sed或awk或脚本可以提供帮助
words_per_line() {
local n=$(($1-1)) i j
for ((i=0; i<${#words[@]}-n; i++)); do
for ((j=0; j<=n; j++)); do
printf "%s " ${words[i+j]}
done
echo
done
}
mapfile -t words < demo.txt # read the file into a zero-indexed array
words_per_line 1
words_per_line 2
words_per_line 3
输出bold
code
make
links
placing
line
return
bold code
code make
make links
links placing
placing line
line return
bold code make
code make links
make links placing
links placing line
placing line return
产生相同的输出:
ruby -e '1.upto(3) {|n| ARGV.each_cons(n) {|a| puts a.join(" ")}}' $(< demo.txt)