我一直在努力学习更多关于Linux的知识,并且今天早上专注于awk命令.我一直试图开始工作的命令如下.
ls -lRt lpftp.* | awk '{print $7, $9}' | mkdir -p $(awk '{print $1}') | ls -lRt lpftp.* | cp $(awk '{print $9, $7}')
本质上,我试图根据上次修改日的文件将目录中的每个文件移动到子目录中.该命令首先只打印我想要的文件,然后使用mkdir根据上次修改的月份创建一个文件夹.之后我想要做的是将每个文件移动到其关联的目录中,但是现在命令是将每个文件移动到01文件夹中并打印出以下文本
cp: 0653-436 12 is a directory.
Specify -r or -R to copy.
每个目录一次.
解决方法:
ls -lRt lpftp.* | awk'{print $7,$9}’|阅读日文件;做mkdir -p“$day”; cp“$file”“$day”; DONE
do和done之间的命令将针对每行输出执行,第一件事是awk打印在day变量中,第二件打印在文件中(每行).我在这里使用引号有点不必要,因为变量中没有空格给定它们的设置方法.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。