我试图开发一个使用一个位置参数的简单 bash 脚本。但是无缘无故的参数是空的。下面给出了 bash 脚本。
#!/bin/bash
ulimit -s hard
if [ "$1" != "" ]; then
echo "Positional parameter 1 contains something"
else
echo "Positional parameter 1 is empty"
fi
root="$(dirname "$(readlink -f "$1")")"
dir="$(basename "$(readlink -f "$1")")"
path=$root/$dir
echo $path
我正在使用 bash -c 命令,因为我需要使用 ProcessBuilder 类从 java 代码运行 bash 脚本。
我对 bash 脚本知之甚少,我尝试了更简单的方式,例如:
root=`dirname $1`
dir=`basename $1`
path=$root/$dir
但结果都是一样的。