0
A
回答
3
如果您的系统提供了一个“目录名称”命令,你可以:
set i = `dirname ~/foo/bar.c`
echo $i
注意在变量名前失踪$。这个解决方案虽然是shell不可知的。
0
使用dirname
命令,例如:
set i = `dirname "~/foo/bar.c"`
注意周围路径引号。包含它们很重要。如果您跳过引号,则dirname
将对包含空格的路径失败。介意~/
表达式的计算结果被执行之前dirname
,如果不使用引号和主路径包括空格从而即使在这种简单的例子可能会失败。
当然,同样的问题也适用于所有其他命令,始终为的环绕参数是带引号的命令的良好做法。
0
echo $i | awk -F"/" '{$NF="";print}' OFS="/"
1
我发现这样做在等待答案,这里的道:
set i = ~/foo/bar.c
echo $i:h
结果:
~/foo
1
对于完全,获取文件名与基名的命令来完成:
set j = `basename ~/foo/bar.c`
echo $j
1
这里是如此从上面mething不同:
可用的tcsh中,但其他一些炮弹AFAIK
> set i = ~/foo/bar.c
> echo ${i:t}
bar.c
> echo ${i:h}
/home/erflungued/foo
0
使用dirname "$i"
事实上,并没有${i:h}
。
如果$i
仅包含文件名(无路径),则后者不会生成预期结果,而dirname
正确返回当前目录.
。
> set i = bar.c
> echo ${i:h}
bar.c
> dirname "$i"
.
相关问题
- 1. 如何通过文件标签剥离package.xml中的路径?
- 2. 如何nginx的剥离上下文路径,zuul和OAuth合并
- 3. 如何从包含完整文件路径的字符串在perl中分离文件名和文件路径
- 4. 如何从绝对路径剥离basedir以获取相对路径?
- 5. 如何从文件路径名中提取文件名?
- 6. 如何从路径获取文件名?
- 7. 如何从Python中的文件名替换(或剥离)扩展名?
- 8. SQLite:从路径中分离文件扩展名
- 9. 从vb.net的LoggedInTemplate中剥离域名
- 10. 如何仅从路径中提取文件/文件夹名称?
- 11. 如何从文件路径中提取文件名?
- 12. TCSH脚本完整路径
- 13. 如何从制造文件中的变量剥离参数
- 14. 从文件名获得文件路径
- 15. 从文件路径获取文件名
- 16. 如何从文件路径获取父文件夹的名称?
- 17. 从路径中删除文件名
- 18. 从文件名中删除路径
- 19. glob.iglob从文件名中删除路径
- 20. 如何从路径中获取文件名的词干?
- 21. 如何从OpenFileDialog中提取文件的路径名?
- 22. 如何从使用Perl的路径中提取文件名?
- 23. PDF文件从iPhone剥离MFMailComposeViewController调用
- 24. 如何从文件名获取文件路径和目录?
- 25. 如何从字符串中剥离&?
- 26. 如何从Ruby文件路径中获得文件名无扩展名
- 27. 从巨大的文本文件中剥离文本块
- 28. 正则表达式 - 从文件名剥离(1)
- 29. 剥离pcap文件中的radiotap标题
- 30. 如何从路径中提取文件名?