我正在尝试编写一个小的shell脚本来查找目录中最近添加的文件,然后将该文件移动到其他位置.如果我使用:
ls -t ~/directory | head -1
Run Code Online (Sandbox Code Playgroud)
然后将其存储在变量VARIABLE_NAME中,为什么我不能通过以下方式将其移动到〜/ otherdirectory:
mv ~/directory/$VARIABLE_NAME ~/otherdirectory
Run Code Online (Sandbox Code Playgroud)
我在这里搜索过谷歌搜索,但似乎没有关于在文件路径中使用变量的任何信息?有一个更好的方法吗?
编辑:这是脚本的一部分:
ls -t ~/downloads | head -1
read diags
mv ~/downloads/$diags ~/desktop/testfolder
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用glob和os在目录中找到最新的.zip文件。有趣的是,我进行了以下设置,并且之前可以正常运行:
max(glob.glob('../directory/*.zip'), key=os.path.getctime)
Run Code Online (Sandbox Code Playgroud)
现在运行它会使我的max()arg是一个空序列,这很有意义,因为当我尝试这样做时:
glob.glob('../directory/*.zip')
Run Code Online (Sandbox Code Playgroud)
它只返回一个空列表。使用完整路径也会给我一个空列表。尝试其他目录也可以得到一个空列表。考虑到以前的工作原理,我对这里发生的事情感到非常困惑。救命?
编辑:使用以下命令使其重新工作:
glob.glob(/Users/*/directory/*.zip)