我正在研究shell脚本并试图将用户输入拆分为多个变量并在不同的地方使用它们。如何将输入字符串拆分为多个变量
用户输入不是固定,从而不能真正分配可变的固定号码,输入由逗号分隔,
./user_input.ksh -string /m01,/m02,/m03
#!/bin/ksh
STR=$2
function showMounts {
echo "$STR"
arr=($(tr ',' ' ' <<< "$STR"))
printf "%s\n" "$(arr[@]}"
for x in "$(arr[@]}"
do
free_space=`df -h "$x" | grep -v "Avail" | awk '{print $4}'`
echo "$x": free_space "$free_space"
done
#total_free_space = <total of $free_space>
#echo "$total_free_space"
}
基本上$ STR *变量值的文件系统的安装点
主机输出如果单独运行df -h
命令
$ df -h /m01 | grep -v "Avail" | awk '{print $4}'
***Output***
150
目前存在的问题:
(working)1. How to get free space available for each /m* using df -h?
目前尚不清楚你想如何拆分。提供更多的例子来澄清。 – anubhava
@anubhava我以回声为例,谢谢。 – homer
df -h/m01 | grep -v“Avail”| awk {'print $ 4'} - >给我150,但是这在脚本 – homer