Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux TAR命令文件扩展名路径扩展_Linux_Bash_Path_Tar_File Extension - Fatal编程技术网

Linux TAR命令文件扩展名路径扩展

Linux TAR命令文件扩展名路径扩展,linux,bash,path,tar,file-extension,Linux,Bash,Path,Tar,File Extension,好的,这应该很容易,但我尝试使用大括号和方括号来实现这一点,但自从我编写UNIX shell脚本以来,时间太长了 我想使用TAR对几个目录中的选定文件进行快速备份,只有那些具有PHP、HTML、CSS或BMP扩展名的文件。谁有办法 #!/bin/bash cd ~ ; x="public_html/gpp" targpp="tar -cvf gppbasic.`date +%Y%m%d.%k%M`.tar $x/*.[php|html|css|bmp]" $targpp ; ls -l

好的,这应该很容易,但我尝试使用大括号和方括号来实现这一点,但自从我编写UNIX shell脚本以来,时间太长了

我想使用TAR对几个目录中的选定文件进行快速备份,只有那些具有PHP、HTML、CSS或BMP扩展名的文件。谁有办法

#!/bin/bash

cd ~ ; x="public_html/gpp"

targpp="tar -cvf gppbasic.`date +%Y%m%d.%k%M`.tar $x/*.[php|html|css|bmp]"

$targpp  ;  ls -l gppbasic*.tar
试试花括号

tar -cvf gppbasic.$(date +%Y%m%d.%k%M).tar $x/*.{php,html,css,bmp}

令人惊讶的是,尽管我确实尝试过(见问题中提到的“支架”),但它还是成功了。唯一的区别似乎是您更改了日期/时间代码的生成方式,但我不知道这会影响它。我认为
反勾选
$()
没有任何区别,我尝试将命令分配给
targetpp
,然后运行
$targetpp
,这两种方法都不起作用<代码>*。{php,html,css,bmp}被视为文字字符串,而不是展开。但是如果我直接运行
tar
命令,两种方法都有效。这是有道理的。谢谢