目前打印出filename
我只是希望它打印出tr
"没有"目录路径。
有什么建议吗?
答案 0 :(得分:1)
这个问题非常模糊,但假设你有一个像
这样的Bash命令echo "$path"
您可以使用
打印文件名echo "${path##*/}"
echo
与变量字符串一起使用时可能会出现意外情况,因此更好的选择是
printf '%s\n' "${path##*/}"
答案 1 :(得分:0)
我真的不明白你想做什么,但是
ls /path/to/files > /path/to/output
假设您在目录中有3个单独的文本文件,上面将在一行中将每个文件名的所有3个文件组合在一起而没有实际路径。
希望有所帮助
Bash替代
for file in /path/to/files/*.txt; do
echo ${file##*/} >> /path/to/output/filename.txt
done
答案 2 :(得分:0)
使用basename就像这样:
shortpath=$(pwd)
basename "$shortpath"
答案 3 :(得分:0)
我能够使用awk
完成此任务| awk'{(n = split($ 18,a,“/”));打印$ 6,$ 10,$ 8,a [n],“\ n”}'> /sometextfile.txt
“\ n”是因为我在结果之间需要一个空行。