假设您的PATH环境变量包含由:
分隔的路径列表,如何只将此列表中的第一个文件夹转换为另一个变量?
答案 0 :(得分:3)
我假设你想用bash命令来做。试试这个:
SELECT
SUM(amount)
FROM
table1
INNER JOIN
(Select Distinct ID From table2) T2 ON table1.id = T2.id
答案 1 :(得分:2)
使用awk怎么样?
foo=`echo $PATH | awk -F':' '{ print $1}'`
答案 2 :(得分:2)
阅读第一个条目的一种方法是使用read
并使用正确的IFS
:
IFS=: read firstPath _ <<< "$PATH"
echo "$firstPath"
您还可以使用IFS
填充数组,并使用索引从数组中获取任何Nth
位置:
IFS=: read -ra arr <<< "$PATH"
echo "First entry: ${arr[0]}"
echo "Second entry: ${arr[1]}"
echo "Fifth entry: ${arr[4]}"
另一个bash解决方案是在第一个:
之后剥离所有内容:
firstPath="${PATH%%:*}"
答案 3 :(得分:1)
到目前为止,我能够使用echo ${PATH%%:*}
获得此功能,但我很高兴看到更好的实现。
答案 4 :(得分:1)
要么:
mydir=${PATH%%:*}
或者这个:
IFS=: read mydir t <<<"$PATH"
是很好的解决方案。