Linux 无法卸载文件?
我编写了一个shell脚本,它试图从ftp服务器中提取tar文件,并在本地对其进行解压缩。我需要从tar存档中提取特定文件。tarfile的文件名包含一个日期;我需要能够根据这个日期选择一个tar文件Linux 无法卸载文件?,linux,unix,ftp,shell,tar,Linux,Unix,Ftp,Shell,Tar,我编写了一个shell脚本,它试图从ftp服务器中提取tar文件,并在本地对其进行解压缩。我需要从tar存档中提取特定文件。tarfile的文件名包含一个日期;我需要能够根据这个日期选择一个tar文件 abc_myfile_$date.tar是我从ftp服务器中提取的文件的格式 我当前的代码如下所示: for host in ftpserver do ftp -inv host <<END_SCRIPT user username password prompt cd remotep
abc_myfile_$date.tar是我从ftp服务器中提取的文件的格式
我当前的代码如下所示:
for host in ftpserver
do
ftp -inv host <<END_SCRIPT
user username password
prompt
cd remotepath
lcd localpath
mget *myfile_$date*.tar
quit
END_SCRIPT
done
for next in `ls localpath/*.tar`
do
tar xvf $next *required_file_in_tar_file*.dat
done
ftpserver中主机的
做
ftp-inv host我不太确定,但是如果要下载多个文件,ftp协议是否没有命令mget
?(而不是get
)我不太确定,但是如果要下载多个文件,FTP协议是否没有命令mget
?(而不是get
)您将获得.tar
文件,但使用z
选项将其解压缩。压缩文件(需要z
的文件)通常具有.tar.gz
前缀。试一试
tar xvf $next *required_file_in_tar_file*.dat
您将获得.tar
文件,但使用z
选项将其解压缩。压缩文件(需要z
的文件)通常具有.tar.gz
前缀。试一试
tar xvf $next *required_file_in_tar_file*.dat
首先,如果要对从服务器获取的文件名使用通配符,则需要使用mget而不是get。通配符文件扩展(the*)不适用于get命令。
拉取文件后,tar操作将按预期工作,大多数现代版本的linux/bsd都有一个“智能”tar,它不需要“z”命令来指定tar文件是压缩的-他们会发现tarball是自己压缩的,并自动解压缩,系统上提供了适当的压缩/解压缩工具(bzip2用于.jz文件,gzip用于.gz文件)。首先,如果要对从服务器获取的文件名使用通配符,则需要使用mget而不是get。通配符文件扩展(the*)不适用于get命令。
拉取文件后,tar操作将按预期工作,大多数现代版本的linux/bsd都有一个“智能”tar,它不需要“z”命令来指定tar文件是压缩的-他们会发现tarball是自己压缩的,并自动解压缩,系统上提供了适当的压缩/解压缩工具(bzip2用于.jz文件,gzip用于.gz文件)。对不起,这是PHP吗?或者这是什么语言?shell脚本…………对不起,这是PHP吗?或者这是什么语言?shell脚本当我在命令行中执行这个命令时,它工作得非常好。但是在脚本中它不工作tar:my_required_file_in_tar_file_123.dat:在archieve中找不到,但该文件在archieve中…您是否考虑过引用第二个参数(带星号的参数)?我编写了与您提到的相同的代码,并尝试了其他类型。我可以在命令行中完成所有这些,但是当我运行脚本时,我无法解压文件。“无法”说什么?(顺便说一句,你为什么不在localpath/*
中为下一个设置,而不是生成另一个ls?在某些情况下,这可能会用着色转义序列污染你的tar名称)。在ftp之后,如果我放置cd localpath,我就能够获得所需文件的untar。。。。谢谢你…当我在命令行中执行这个命令时,它工作得非常好。但是在脚本中它不工作tar:my_required_file_in_tar_file_123.dat:在archieve中找不到,但该文件在archieve中…您是否考虑过引用第二个参数(带星号的参数)?我编写了与您提到的相同的代码,并尝试了其他类型。我可以在命令行中完成所有这些,但是当我运行脚本时,我无法解压文件。“无法”说什么?(顺便说一句,你为什么不在localpath/*
中为下一个设置,而不是生成另一个ls?在某些情况下,这可能会用着色转义序列污染你的tar名称)。在ftp之后,如果我放置cd localpath,我就能够获得所需文件的untar。。。。谢谢你。。。。