mac 的tar命令--exclude和linux的tar命令--exclude的区别

有个需求是压缩某个文件夹,但是要排除该文件夹下的另一个文件夹,于是用到

--exclude命令,但是在mac上面执行

tar -zcvf test.tgz test/ --exclude *.jpg

始终提示

tar: --exclude: Cannot stat: No such file or directory

而在linux上面就不会提示这个错误,到底是为什么呢?

后来发现是mac和linux对这个参数的处理不一样,通过man tar分别查阅mac和linux上面的说明,发现mac上面对于 --exclude是这样解释的

 --exclude pattern
Do not process files or directories that match the specified pattern.
Note that exclusions take precedence over patterns or filenames specified
on the command line.

第一句是对这个命令的解释,也就是排除的意思,接下来第二句就是重点了,意思是 --exclude要写在前面,所以mac上面排除某个文件或文件夹要写成

tar --exclude *.jpg -zcvf test.tgz test/

再看下linux下面man tar里对 --exclude 的解释

--exclude=PATTERN
exclude files, given as a PATTERN

只是解释了这个命令的用法,并没有对其位置有特殊的说明,经过试验也验证了--exclude放在前面和后面都是生效的

结语:mac和linux平台很多命令都是相似的,但也是有一些区别,不能想当然。

原文地址:https://www.cnblogs.com/Vultr/p/9093061.html

时间: 2024-11-06 03:38:56

mac 的tar命令--exclude和linux的tar命令--exclude的区别的相关文章

Linux下ps命令详解 Linux下ps命令的详细使用方法

Linux下ps命令详解 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)ps工具标识进程的5种状态码:D 不可中断 uninterruptible sleep (usuall

tac命令以及各种linux文件查看命令

有许多命令都可以查看文件,不同的命令有不同的优点,可以针对不同的需要分别选择命令以提高效率:    cat     由第一行开始显示内容,并将所有内容输出    tac     从最后一行倒序显示内容,并将所有内容输出    more    根据窗口大小,一页一页的显示文件内容    less    和more类似,但其优点可以往前翻页,而且进行可以搜索字符    head    只显示头几行    tail    只显示最后几行    nl     类似于cat -n,显示时输出行号我使用最多

【命令cp】linux cp复制命令参数及用法详解

cp (复制档案或目录)[[email protected] ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[[email protected] ~]# cp [options] source1 source2 source3 -. directory参数:-a :相当于 -pdr 的意思:-d :若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身:-f :为强制 (force) 的意思,若有重复或其它疑问时,不会询

Linux命令(10):rm命令

rm命令 功能说明 Linux中rm命令是删除文件和目录的.在使用-rf参数时,一定要注意,因为该目录和文件都会被删除,删除一个目录中的一个或多个文件或目录,如果没有使用-r选项,则rm不会删除目录.如果使用 rm 来删除文件,通常仍可以将该文件恢复原状.用法如下:   rm [选项] 文件- 主要功能 一次显示整个文件:cat filename 从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件 将几个文件合并为一个文件:cat file1 file2 > f

linux之帮助命令——help,man,whereis简介

作为新手,在刚开始使用linux的时候,难以记住许多命令,这时候linux的帮助命令就派上用场了. 1.help命令 首先区分一下linux内部命令和外部命令,内部命令被封装在shell中,外部命令在linux系统上可以找到对应的位置.使用type可以获知一个命令是内部命令.外部命令或关键字,例如: > type cd cd is a shell builtin > type ls ls is hashed (/bin/ls) 在shell中键入help命令可以查看所有内部命令.当用help查

reboot命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社<Linux命令应用大词典> 讲述729个命令,1935个例子 学习Linux系统的参考书.案头书,遇到不懂的命令或命令选项一查即可 争取每天都发布内容 本文出自 "airfish2000" 博客,更多命令查看博客: http://airfish2000.blog.51cto.com/10829608/1898283 reboot命令 使用reboot命令可以重启Linux系统. 命令语法: reboot [选项] 命令中各选项的含义如表所示. 表 

linux 进程查看命令汇集

首先,向大家介绍一些linux查看进程的命令,pstree.ps.top.htop等,接下来为大家演示这几个常用命令. 1,  Linux ps命令: (1)linux 进程查看命令ps,常用命令为#ps aux 如图所示: 其中红色圈出部分: PID:进程号  %CPU:进程占用cpu比例  %MEM:进程占用内存比例  VSZ:虚拟内存占用比例  RSS:常驻内存级 (2)ps常用命令组合#ps –ef  如图所示: 其中,-e:显示所有进程  -f:显示完整格式 2,  linux top

Linux主要shell命令详解(上)

[摘自网络] kill -9 -1即实现用kill命令退出系统 Linux主要shell命令详解 [上篇] shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的是Bash.本章讲述了shell的工作原理,shell的种类,shell的一般操作及Bash的特性. 什么是shell Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称. shell是用户和Linux内核之间的接口程序,如果把

Windows命令行(cmd)下快速查找文件(类似Linux下find命令)

for /r 用法简介 用了Linux下的find命令,觉得查找文件很方便,那么在windows下有没有类似的命令可以遍历目录并通过文件名找到文件呢?答案是有: Windows下的 for /r 命令具有与Linux下 find 命令类似的功能,使用语法上类似: find /r 目录名 %变量名 in (匹配模式1,匹配模式2) do 命令 匹配模式可以是通配类似于: *.jpg:所有.jpg后缀的文件 *test*:所有名称中包含test的文件 注意: 1. 匹配模式中至少带上1个*号 2.