Bash操作符的作用是什么<<&书信电报;(即三倍小于符号)平均值?
三重小于符号bash运算符的作用是什么,它将字符串重定向到命令的stdinBash操作符的作用是什么<<&书信电报;(即三倍小于符号)平均值?,bash,shell,Bash,Shell,三重小于符号bash运算符的作用是什么,它将字符串重定向到命令的stdin 直接在命令之前以这种方式分配的变量仅对命令进程有效;炮弹未被触碰。来自manbash 这里是字符串 此处文件的一个变体,格式为: <<<word 没有设置IFS的原因是bash没有将其视为单独的命令。。。您需要在命令后添加换行符或分号以终止命令: $ cat /tmp/ifs.sh LINE="7.6.5.4" IFS='.' read -a ARRAY <<< "$LI
直接在命令之前以这种方式分配的变量仅对命令进程有效;炮弹未被触碰。来自
manbash
这里是字符串
此处文件的一个变体,格式为:
<<<word
没有设置IFS的原因是bash没有将其视为单独的命令。。。您需要在命令后添加换行符或分号以终止命令:
$ cat /tmp/ifs.sh
LINE="7.6.5.4"
IFS='.' read -a ARRAY <<< "$LINE"
echo "$IFS"
echo "${ARRAY[@]}"
$ bash /tmp/ifs.sh
7 6 5 4
$cat/tmp/ifs.sh
LINE=“7.6.5.4”
IFS='.'读取-数组
似乎是为$LINE
定义自定义分隔符的一种方法。如何修改它以使用自定义多字符分隔符?比如说,==>
?我应该如何引用字符串?你不能$IFS
始终被解释为一系列单个字符。但是当我想使用换行符拆分数组时。只有第一项被添加到hostArray。但是主机有4个项目host=$(mysql-S$socket$catalog——跳过列名-e“从mysql.user中选择主机”;echo“主机:$host"; IFS=$'\n';read-ra hostArray@Guna我已经晚了几年,但无论如何,其他人可能会想知道……在这部分中,因为第一种方法是为单个命令临时设置env vars。当该命令完成时,它们会自动重置回以前的值。我一直使用它来设置调试标志或其他,但只是暂时的。当您需要在单个|管道中使用多个管道时,使用此操作符(而不是使用mknod命名管道):例如,echo data | command--stdin上的数据--other-data-on-fd-3
$ cat /tmp/ifs.sh
LINE="7.6.5.4"
IFS='.' read -a ARRAY <<< "$LINE"
echo "$IFS"
echo "${ARRAY[@]}"
$ bash /tmp/ifs.sh
7 6 5 4
$ cat /tmp/ifs.sh
LINE="7.6.5.4"
IFS='.'; read -a ARRAY <<< "$LINE"
echo "$IFS"
echo "${ARRAY[@]}"
$ bash /tmp/ifs.sh
.
7 6 5 4