如何使用 tar tar 当前目录中的所有文件但不输入 tar 文件和所有文件的名称?

How to tar all files in current directory using tar but without inputing names of tar file and all files?

环境:

原始输入(示例):

.
├── f1.md
├── f2.md
├── f3.md
├── f4.txt
├── f5.csv
└── f6.doc

0 directories, 6 files

在测试文件夹中,有 6 个文件。

预期输出:

.
├── all.tar
├── f1.md
├── f2.md
├── f3.md
├── f4.txt
├── f5.csv
└── f6.doc

0 directories, 7 files

尝试与问题

tar -cvf all.tar f1.md f2.md f3.md f4.txt f5.csv f6.doc 

虽然用上面的方法得到了结果,但是我必须输入所有的文件名和压缩后的文件名,很不方便。例如,我可以 select 所有文件并右键单击,然后选择压缩选项而不输入 all.tar (我不介意 .tar 文件名。)

希望

无需输入具体文件名的命令行方式。

如果你想要所有文件,包括子目录中的文件(或者如果你没有子目录),你会 运行:

tar -cvf all.tar *

然后,bash 会将 * 扩展到当前目录中所有文件的列表中,包括子目录。

如果您只需要当前目录中的那些文件,而不是子目录中的文件,那么您将不得不在更复杂的命令中使用 find。让我知道您是否属于这种情况,我可以花时间为您找到该命令组合。