有没有一种方法可以根据最后的字符将cd放入目录中?
I有以164开头的目录,但根据最后几个数字不同。我想cd到一个目录的基础上,最后几个数字,如果不是最后一个数字本身,说9比8。有可能吗?当我从第一个数字164开
解答动态
对于Bash,是的,您可以使用通配符:
cd/path/to/*9/ (将9替换为所需的位数;如果您所在的目录包含所有164。。。
您需要确保表达式足够具体,可以解析为单个目录,否则cd将失败并出现错误。(注意Zsh或Ksh有两个参数形式的cd,您可能会意外地调用它们,尽管只有在当前路径包含第一个参数的情况下才这样做。)
您也可以在键入上述命令后,在执行命令之前,使用tab complete;如果有多个目录匹配,您的shell将列出它们。
如果它们除了最后几个数字之外实际上是不同的,您可以在cd命令中使用通配符,例如
cd 164*8 (如果它们实际上不是不同的,shell将通过生成错误消息来提醒您)。
您可以自定义一些操作。这是untested
mycd(){local matches=(*quot;/)#目录以参数大小写${matches[@]}结尾(0)echoquot;2;return 1;1)cdquot;;*)echoquot;2;return 1;结尾;;esac}mycd 89#cd到以89 结尾的子目录,当有多个匹配的目录时,可以使用select语句进行扩展,以允许您选择所需的目录。- End
免责声明:
本页内容仅代表作者本人意见,若因此产生任何纠纷由作者本人负责,概与琴岛网公司无关。本页内容仅供参考,请您根据自身实际情况谨慎操作。尤其涉及您或第三方利益等事项,请咨询专业人士处理。