您好我想要一个简单的shell脚本,它从文件的给定路径中查找文件的名称。像
$path = "/var/www/html/test.php";
然后我想在某个变量中获得值“test”。也只有.php文件存在。我正在使用bash shell。 谢谢
答案 0 :(得分:43)
尝试:
path="/var/www/html/test.php"
name=$(basename "$path" ".php")
echo "$name"
引号仅用于防止$path
包含空格时出现问题。
答案 1 :(得分:17)
使用内置的UNIX命令:
basename "/var/www/html/test.php"
答案 2 :(得分:2)
使用basename()函数。它内置于UNIX函数
答案 3 :(得分:1)
string="/var/www/html/test.php"
oIFS="$IFS"; IFS='/'
set -A str $string
IFS="$oIFS"
echo "strings count = ${#str[@]}"
len=${#str[@]}
pos=`expr $len - 1`
echo "file : ${str[$pos]}";
输出 -
strings count = 4
file : test.php