gpt4 book ai didi

shell - 如何将 'ls' 输出文件移动到 unix 中的文件夹

转载 作者:行者123 更新时间:2023-12-02 21:24:52 24 4
gpt4 key购买 nike

我必须将最新修改的文​​件从一个 UNIX 脚本文件中的一个文件夹移动到另一个文件夹。

正在使用

cd /abc/home/ads/
mv `ls -ltr |tail -1` /abc/home/asd451/Output

最佳答案

它不起作用,因为您使用的是 ls -l 并且输出比简单的文件名更复杂。

另外,不需要-r,只需使用第一行而不是最后一行:

mv "$(ls -t | head -1)" /abc/home/asd451/Output

我没有找到任何好的方法来仅使用ls列出文件,因此如果您只想移动文件,这里有一个解决方案:

mv "$(ls -lt | grep '^-' | head -1 | awk '{ print $9 }')" /abc/home/asd451/Output

我仅使用 grep 来获取文件(ls -l 的输出以类似于 -rwxr-wr-w 的文件开头,以及 drwxr- xr-w 用于目录)并使用 awk 打印文件名。


要添加路径(我警告你它会变得很脏):

source_path=/abc/home/ads/
mv "$(ls -lt $source_path | grep '^-' | head -1 | awk '{ print "'$source_path/'"$9 }')" /abc/home/asd451/Output

关于shell - 如何将 'ls' 输出文件移动到 unix 中的文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25200865/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com