我想在最高的目录号码的基础上进入目录。
路径:/home/cg/root/2018/01
.在这条路径中,我有多个目录,如下所示
15
16
17
So on..
在这种情况下,最高目录是17
,所以我想移动到17
目录.如果一个名为18
的目录存在,那么希望进入18
。
有任何方法可以使用cd
命令来完成吗?
比如:
cd /home/cg/root/2018/01/$(ls |tail -1)
发布于 2018-01-18 19:27:06
您可以使用find
sort
和head
来完成此操作。
cd $(find /home/cg/root/2018/01/* -type d | sort -r | head -1)
应该能做到
发布于 2018-01-18 19:57:46
在函数中使用(临时) bash数组:
cdhighest() {
local dirs=(/home/cg/root/2018/01/*)
cd -- "${dirs[-1]}"
}
然后只运行cdhighest
,它将带您到最后排序的/home/cg/root/2018/01下的目录。
参考资料:
发布于 2018-01-19 05:35:26
你可以用简单的方式来做。
cd /home/cg/root/2018/01; cd `ls -r | head -n 1`
https://unix.stackexchange.com/questions/418080
复制相似问题