Wol*_*olf 6 shell bash text-processing columns paste
这个问题基于Ask\xe2\x80\xafUbuntu 上的 \xc2\xa0similar 问题,\n但不是bash
,我\xc2\xa0 希望在 中获得类似的输出sh
。
bash 中没有问题;它按预期工作。
\nwolf@linux:~$ echo $SHELL\n/usr/bin/bash\nwolf@linux:~$ \nwolf@linux:~$ varA=\'Aug 01\n> Aug 16\n> Aug 26\'\nwolf@linux:~$ \nwolf@linux:~$ varB=\'04:25\n> 03:39\n> 10:06\'\nwolf@linux:~$ \nwolf@linux:~$ echo "$varA $varB"\nAug 01\nAug 16\nAug 26 04:25\n03:39\n10:06\nwolf@linux:~$\nwolf@linux:~$ paste <(printf %s "$varA") <(printf %s "$varB")\nAug 01 04:25\nAug 16 03:39\nAug 26 10:06\nwolf@linux:~$\n
Run Code Online (Sandbox Code Playgroud)\n但是,当我在 中尝试类似的命令时sh
,我收到以下错误。
wolf@linux:~$ sh\n$ \n$ varA=\'Aug 01\n> Aug 16\n> Aug 26\'\n\n$ varB=\'04:25\n> 03:39\n> 10:06\'\n$ \n$ echo "$varA $varB"\nAug 01\nAug 16\nAug 26 04:25\n03:39\n10:06\n$ \n$ paste <(printf %s "$varA") <(printf %s "$varB")\nsh: 22: Syntax error: "(" unexpected\n$ \n
Run Code Online (Sandbox Code Playgroud)\n是否有可能获得类似的输出sh
?
如果您的变量具有相同的行数,那么您可以使用该pr
命令将标准输出打印到两列中,例如:
$ printf '%s\n' "$varA" "$varB" | pr -2 -Ts^I
Aug 01 04:25
Aug 16 03:39
Aug 26 10:06
Run Code Online (Sandbox Code Playgroud)
其中^I
代表制表符(与命令的默认分隔符一致paste
),可以使用组合键Ctrl+引入V TAB,同时-T
关闭页眉和页脚。