如何使用 tar 压缩当前目录中的所有文件,但不输入 tar 文件和所有文件的名称?
Posted
技术标签:
【中文标题】如何使用 tar 压缩当前目录中的所有文件,但不输入 tar 文件和所有文件的名称?【英文标题】:How to tar all files in current directory using tar but without inputing names of tar file and all files? 【发布时间】:2017-08-23 11:41:34 【问题描述】:环境:
macOS Sierra 10.12.6原始输入(示例):
.
├── 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
虽然我从上述方法得到结果,但我必须输入所有文件名和压缩文件名,这很不方便。例如,我可以选择所有文件并右键单击,然后选择压缩选项而不输入all.tar
(我不介意.tar 文件名。)
希望
命令行方式,无需输入具体文件名。
【问题讨论】:
【参考方案1】:如果您想要所有文件,包括子目录中的文件(或者如果您没有子目录),您可以运行:
tar -cvf all.tar *
然后,bash
会将*
扩展为当前目录中所有文件的列表,包括子目录。
如果您只想要当前目录中的那些文件,而不想要子目录中的那些文件,那么您将不得不在更复杂的命令中使用find
。如果您是这种情况,请告诉我,我可以花时间为您找到该命令组合。
【讨论】:
以上是关于如何使用 tar 压缩当前目录中的所有文件,但不输入 tar 文件和所有文件的名称?的主要内容,如果未能解决你的问题,请参考以下文章