我正在尝试创建一个快捷方式来查找cshell终端中某个位置的第n个最近更新的文件夹。现在我有一个找到最新的一个。
alias latest 'cd `ls -dt1 -- */ | head -1`'
我期待添加一个参数,以便它可以计算第n个最近的文件夹,如
alias latestn 'cd `ls -dt1 -- */ | head -[expr !:1 + 1] | tail 1`'
我试着在网站上搜索,但我找不到一个对输入参数进行数学运算的例子。
lyfkaqu11#
你不需要对输入参数进行数学运算。通过这样做:
alias latestn 'cd `ls -dt1 -- */ | tail -n+\!:1 | head -1`'
命令latestn 1将转到最新的目录(第一个最近的目录),latestn 2将转到第二个最近的目录,依此类推。这是因为tail -n+x正在从x开始检索行,而head -1正在获取第一行:因此,链接两者等同于获得第x行。
latestn 1
latestn 2
tail -n+x
x
head -1
1条答案
按热度按时间lyfkaqu11#
你不需要对输入参数进行数学运算。通过这样做:
命令
latestn 1
将转到最新的目录(第一个最近的目录),latestn 2
将转到第二个最近的目录,依此类推。这是因为
tail -n+x
正在从x
开始检索行,而head -1
正在获取第一行:因此,链接两者等同于获得第x
行。