只是出于好奇——下面的区别是什么..
我有一个脚本,我正在从 KB 转换为 MB。我正在使用命令替换来分配变量,但看不出如下分配它们的区别:
backup_size=$(echo "$client_kb/1024" | bc -l)
&
read backup_size < <(echo "$client_kb/1024" | bc -l)
每种做事方式的需求是什么?
谢谢
最佳答案
对于像数字这样的简单值,没有区别。但是尝试使用包含尾随空格或多行的值:
#! /bin/bash
func () {
printf $'1 2\n3 '
}
command_substitution=$(func)
read process_substitution < <(func)
set -xv
[[ "$command_substitution" == "$process_substitution" ]]
关于Bash - 读取变量和直接分配变量有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52480117/