shell – 找到打印文件名,而不是完整的路径

我在ksh脚本中使用find命令,而我正在尝试检索文件名,而不是完整的路径.像我一样,我希望它返回text.exe,而不是//severname/dir1/dir2/text.exe.

我该怎么办?为了澄清,我知道文件的目录,我只是抓住那些创建befoee一个ceetain日期,所以路径名不重要.

你可以这样做:
find ..... |sed 's#.*/##'

但是这真的有道理吗?如果有两个文件具有相同的文件名,但位于不同的目录,那么你如何区分呢?

例如

you are in /foo

/foo/a.txt
/foo/bar/a.txt

编辑

编辑答案以获得更好的文本格式.

正如您在评论中所述,所以你想

>找到一些文件,
>将它们复制到目录中,
gzip他们到档案说a.gz
>仅当步骤2成功时,才能删除复制的文件

这可以一次完成:

find ...|xargs tar -czf /path/to/your/target/a.gz

这将找到文件,使tar(a.gz)到您的目标目录.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...