有谁用过,请贴出详细例子,感激不尽!

解决方案 »

  1.   

    tar的知道,winrar没装,电脑里只有7zip确保php中的PATH能调用到tar,或者写完整的tar路径
    <?php    system("tar xf t.tgz");?>
      

  2.   

    win下个是要调用到com组件调用的,你搜索下~~
    Linux下调用系统命令简单的多
      

  3.   

    要在 windows下php 调用winrar命令行解压文件,需要满足以下条件:
    1、确认 system 函数可用
    2、复制 winrar.exe 到php程序所在目录,或设置 winrar.exe 所在目录存在于系统搜索路径中
    3、确认 winrar.exe 所在目录有一般用户“执行”权和读写权限
    满足上述条件后,事情就好办了。命令格式见后winrar 命令行说明:
      WinRAR  <命令> -<开关1> -<开关N> <压缩文件> <文件...> <@列表文件...> <解压路径\>命令        要 WinRAR 运行的字符组合代表功能
    开关        切换操作指定类型,压缩强度,压缩文件类型,等等的定义。
    压缩文件          要处理的压缩文件名。
    文件                  要处理的文件名。
    列表文件           列表文件是包含要处理文件名称的纯文本。文件名应该在第一卷启动。可以在列表文件中使用//字符后添加注释。例如,你可以包含两列字符串创建 backup.lst:c:\work\doc\*.txt //备份文本文档     c:\work\image\*.bmp //备份图片c:\work\misc并接着运行: winrar a backup @backup.lst你可以在命令行中同时指定普通的文件名和列表文件名。
    解压路径 只与命令 e 和 x ,搭配使用。指出解压文件添加的位置。如果文件夹不存在时,会自动创建。
    注意事项
    a) 如果未指定 文件 或是 列表文件 时,WinRAR 将会以缺省的 *.* 运行全部的文件;
    b) 如果未指定压缩文件扩展名时,WinRAR 将会使用在 压缩配置 中选定的默认压缩文件格式。但你可以指定 .RAR 或 .ZIP 扩展名来替换它们;
    c) 在命令行所输入的开关会替换相同的配置设置值;
    d) 在命令 c、e、s、t、rr、k 和 x 可在压缩文件名中使用通配符。如此可以用单个的命令来进行超过一个以上的压缩文件,除此之外,如果你指定 -r 开关于这些命令时,它们将会搜索在子文件夹中的压缩文件;e) 某些命令和开关只应用在 RAR 压缩文件,有些则在 RAR 和 ZIP 都可使用,而某些则可应用在全部的压缩文件格式。这一些都得看压缩文件格式所提供的特性而定;
    f) 命令和开关的大小写是相同意思的,你可以用大写或者小写来下命令均可。
    ---------------------------------------------------------------------------
    <命令>
      a             添加文件到压缩文件添加指定的文件和文件夹到压缩文件中。此命令行等同于 添加。
    注意: 因为分卷压缩文件修改是禁用的,此命令无法应用来更新分卷压缩文件,只用于创建时。
    例子:
    a) 从当前文件夹添加全部 *.hlp 文件到压缩文件 help.rar 中WinRAR a help *.hlpb) 从当前文件夹和子文件夹压缩全部文件成为 362000 字节大小、固实的、分卷自解压文件 save.part1.exe,save.part2.rar,save.part3.rar 等,并在每一个分卷中添加恢复记录
    WinRAR a -r -v362 -s -sfx -rr save因为未指定文件名,全部文件 (*.*) 将会被添加。c) 如果指定了文件夹名,并结合引用参数 开关 -r,这时整个文件夹和子文件夹的全部内容都会被添加到压缩文件中。下面的命令将会把文件夹 Bitmaps 中全部的文件添加到 RAR 压缩文件 Pictures 中WinRAR a -r Pictures.rar Bitmaps
    当然这也可以使用常规格式用 Bitmaps 来代替 Bitmaps\*.*。
      c             添加压缩文件注释
       此命令允许在压缩文件中添加 注释 。RAR 压缩文件的最大注释长度是 62000 字节,而 ZIP 压缩文件则为 32768 字节。添加压缩文件注释也可以通过使用 压缩文件管理 命令 添加压缩文件注释。
       因为分卷压缩文件修改是禁用的,所以注释无法应用在分卷压缩。当创建分卷压缩时,你可以使用开关 -z<文件> 来添加注释到分卷压缩。例子:a) 添加注释到压缩文件 distrib.rar
    WinRAR c distrib.rar
    b) 从文件添加注释可以使用 -z<文件> 开关。
    WinRAR c -zinfo.txt dummy   cf            添加文件注释
      cw            写入压缩文件注释到文件
      d             删除压缩文件中的文件
       从压缩文件删除指定的文件和文件夹。此命令行命令相当于 压缩文件管理 命令 删除。
    注意:
    1) 如果从压缩文件删除全部的文件时,空白的压缩文件将会被删除。
    2) 因为分卷压缩文件修改是禁用的,此命令无法应用于分卷压缩。例子:
    从压缩文件 dummy 删除全部的 *.dmy 文件WinRAR d dummy *.dmy   e             解压压缩文件到当前目录
     忽略路径解压压缩的文件到当前或指定的文件夹。此命令行对应的是 压缩文件管理 命令 解压到指定文件夹 并在 解压路径和选项对话框 “不解压路径”的选项是启用时。例子:
    在当前文件夹,从全部的 RAR 压缩文件解压所有的 *.doc 文件到当前文件夹
    WinRAR e *.rar *.doc 
      

  4.   

      f             刷新压缩文件中的文件
       只有在压缩文件中的文件比添加的还旧时才更新。此命令不会把新文件添加到压缩文件中。命令行等同于 添加到压缩文件 并且在 压缩文件名和参数对话框 选择了“只刷新已存在的文件”的更新模式。
      因为分卷压缩文件修改是禁用的,所以此命令无法应用在分卷压缩。另请参阅: 命令 A - 添加文件到压缩文件i[参数]=<串>  在压缩文件中查找字符串
       在压缩文件中查找字符串。支持下列参数:    i  - 不区分大小写查找(默认);
        c  - 区分大小写查找;
        h  - 十六进制查找;
        t  - 使用 ANSI, Unicode 和 OEM 字符表;   如果没有指定参数,它可以使用简单的命令行语法 i<字符串> 代替 i=<字符串>   它还允许和其他参数一起指定‘t’变量,例如,ict=字符串,使用上述所有字符表执行区分大小写的查找。   由于技术限制,现在 WinRAR 不支持在 ACE 和 7Z 压缩文件格式中查找。例子:1) winrar "ic=first level" -r c:\*.rar *.txt在磁盘C:中的 *.RAR 压缩文件中的 *.txt 文件中执行区分大小写搜索 "first level" 字符串。2) rar ih= f0e0aeaeab2d83e3a9 -r e:\texts在 e:\text 目录下的 RAR 压缩文件中查找十六进制字符串 f0 e0 ae ae ab 2d 83 e3 a9 。   k             锁定压缩文件  此命令可防止 WinRAR 在未来对压缩文件的任何修改。此命令行命令相当于 压缩文件管理 命令 锁定压缩文件。例子:
    WinRAR k release
    压缩文件管理:     WinRAR 图形界面可以是二种基本状态中的一种: 文件管理模式或压缩文件管理模式。
       在文件管理模式,将会显示当前工作文件夹的文件和文件夹列表。你可以使用鼠标或键盘等常用的 Windows 方式来 选择 文件和文件夹,以及运行不同文件操作,例如压缩或者删除。这些模式也可以用压缩文件组来运行测试和解压操作。
       在压缩文件管理模式,将会显示当前打开的压缩文件的压缩文件和文件夹列表,你也可以选择文件和文件夹,并运行如解压、测试或注释等压缩文件指定操作。   在任一个模式里,你均可以更改当前的文件夹 (实际的或压缩过的)。按下 Backspace 或 Ctrl+PgUp 或在文件夹的".."名称上双击,可以转到磁盘或压缩文件文件夹的上一层。如果你正在查看压缩文件的最上层文件夹,相同的动作将会关闭压缩文件,并返回到 WinRAR 文件管理模式。按下 Enter 或 Ctrl+PgDn 或在任何其它的文件夹上双击则进入里面。同样的动作应用在压缩文件名时,则会打开此压缩文件。Ctrl+\ 则将磁盘的最上层文件夹设置为当前文件夹。   要进入 WinRAR 的文件管理模式,只需很简单地在 WinRAR 图标上双击,或者从命令行不加参数运行 WinRAR。
       要进入 WinRAR 的压缩文件管理模式,先从文件管理模式启动 WinRAR,然后将光标移到想要的压缩文件上,并在压缩文件名上按下 Enter 或从 文件菜单 使用“打开压缩文件”命令。或者在 Windows 界面 (资源管理器或桌面) 的压缩文件名上以鼠标双击就可用 WinRAR 将它打开。要有这样的特性,WinRAR 必须在安装期间关联到压缩文件 (它是默认的安装选项)。你也可在安装后使用 综合设置对话框 将压缩文件关联到 WinRAR。最后,如果在命令行以压缩文件名作为单个参数运行 WinRAR,也可以直接从命令行进入想要的压缩文件。锁定压缩文件:   此命令使用于当 WinRAR 是用在 文件管理 和 压缩文件管理 模式时。如果你在压缩文件内部,你不需要选择任何要运行该命令的文件,只要使用 命令菜单、工具栏上的“锁定”按钮或键盘快捷键 Alt+L 运行“锁定压缩文件”命令。如果你在文件管理模式浏览未压缩文件,首先选择要搜索来锁定的压缩文件和文件夹。
       锁定的压缩文件便无法再通过 WinRAR 修改。你可以锁定重要的压缩文件,以防止被意外的修改。这个功能只能被 RAR 压缩文件支持。命令行对应命令:   命令“k”
      l[t,b]        列出压缩文件[技术信息,简洁]  m[f]          移动到压缩文件[仅对文件]   类似 命令 a ,但在压缩操作成功完成后,文件和文件夹将会被清除。此命令行等同于 添加到压缩文件 并且在 压缩文件名和参数对话框中启用“压缩之后删除”选项。
       因为分卷压缩文件修改是禁用的,所以此命令无法应用在更新分卷压缩,只能创建。
      p             打印文件到标准输出设备
      r             修复压缩文件   压缩文件修复由二个阶段所组成。首先,损坏的压缩文件会扫描 恢复记录 (参阅 rr 命令)。如果压缩文件包含先前添加的恢复记录,而且损坏的数据部分是连续性的,并低于 N*512 字节,N 代表置入压缩文件内恢复扇区的数目,压缩文件成功重建的机会是非常高的。当此阶段完成时,新的压缩文件将会创建,叫做 _recover.rar。
       如果损坏的压缩文件不包含恢复记录,或是如果压缩文件由于严重的损坏,而不能够完全恢复时,第二阶段开始。在此阶段期间,仅有压缩文件结构的重建,而要恢复失败 CRC 验证的文件是不可能,但是它尽可能的从损坏的压缩文件架构中,可访问的部位来恢复未损坏的文件。通常这对固实的压缩文件是有用的,在损坏的固实压缩文件,通常仅第一个文件可能在第二个阶段期间被恢复的。   当此阶段完成时,新的压缩文件将会创建,叫做 _reconst.rar。
       当恢复程序操作时,当可疑的文件出现的时候,WinRAR 可能会提示用户加以协助。
       可疑的项目 <可能的文件名>。将它添加到压缩文件: 是/否/全部
       回答“是”把此项目添加文件 _recover.rar。
       此命令行等同于 文件管理 命令 修复压缩文件。例子:
    winrar r buggy.rar
      rc            重建丢失的卷  使用 恢复卷 (.rev 文件)重建丢失的卷。你需要指定任何存在的卷作为压缩文件名,例如:
       winrar rc backup.part03.rar
       你可以在 这里 读到更多关于恢复卷的信息。
      rn            重命名压缩文件
       重命名压缩文件。这个命令只支持 RAR 压缩文件格式。命令语法是:
       winrar rn <压缩文件名> <源文件名1> <目标文件名1>   <源文件名N> <目标文件名N>
    例如,下列命令:
       winrar rn data.rar readme.txt readme.bak info.txt info.bak
    在压缩文件 data.rar 中将把 readme.txt 重命名为 readme.bak 并把 info.txt 重命名为 info.bak。
    在源文件和目标文件名中可以使用统配符来进行简单像改变文件扩展名的名称转换。例如:winrar rn data.rar *.txt *.bak
    将把所有的 *.txt 文件重命名为 *.bak。
    WinRAR 不检查目标文件名是否已经在压缩文件中存在,所以你需要小心,防止重名。尤其是使用统配符时特别重要。这个命令有潜在的危险,因为一个错误的统配符可以损坏所有的压缩文件名。
      rr[N]         添加数据恢复记录
       选择性的,多余的信息 (恢复记录) 可添加到压缩文件中,也会造成压缩文件大小些微增大,但在磁盘失败或是其它数据流失时,可以帮助恢复压缩文件。 
       恢复记录可包含最多 524288 个恢复扇区。如果受损数据部位是连续性的,这时每一个扇区能够恢复 512 个字节的受损信息,然而在多区域受损时,此值将会减少。
       扇区的数量也可以直接以“rr”命令 (N = 1,2 .. 524288) 指定。如果用户未指定,则将会以压缩文件大小自动的选择记录区值: 恢复信息的大小大约是压缩文件大小总计的 1%,通常允许恢复压缩文件连续受损数据总计大小最多达 0.6%。   你也可以使用百分比字符附加指定 <n> 压缩文件大小百分比的恢复记录大小。例如,‘rar rr3% 压缩文件名’注意如果你从.bat 或 .cmd 文件运行这个命令时,你需要使用 rr3%% 代替 rr3%,因为命令处理把符号‘%’作为批处理文件开始的参数。你可以使用 ‘p’代替‘%’,所以‘rr3p’也可运行。
       恢复记录大小的概算公式为:
    <压缩文件大小> / 256 + <恢复扇区数量> * 512 字节。此命令行等同于 压缩文件管理 命令 保护压缩文件防止损坏。
    例子:
    a)压缩文件 backup 添加默认大小(1%)恢复记录
    winrar rr backup
    b) 添加数据恢复记录到压缩文件 pictures 并设置它的大小为压缩文件总大小的 5%
    winrar rr5p pictures
      rv[N]         创建恢复卷   创建恢复卷(.rev文件),以后它可以在卷组中重建丢失的文件。
       这个命令只对多卷压缩文件敏感,你需要在组中指定第一卷的名字作为压缩文件名。例如:
       winrar rv3 data.part01.rar
       选项 <N> 参数指定创建恢复卷的数目并必须少于RAR卷的总数。你也可以附加一个百分号到这个参数上,这样创建的.rev文件的数目将等于从RAR卷总数获得的这个百分比。 例如:
       winrar rv15% data.part01.rar
       你可以在 这里 读到更多关于恢复卷的信息。
      s[名字|-]     转换压缩文件为自解压格式或转换回压缩文件   这个命令会创建一个自解压文件 (SFX) 当运行时会解压包含在里面的文件。
       你也可以制作自解压当成多片的分卷压缩第一个序列,但必须注意一点,因为自解压模块的数量而会使文件大小较大些。自解压分卷的创建可使用命令 a 并加上开关: -v<大小> -sfx,然后你不需要确认分卷的大小 - 第一个分卷会自动的以正确的大小来创建。
       这个命令行等同于  压缩文件管理 命令 把压缩文件转换成自解压格式。例子:
    WinRAR s diamant   默认 WinRAR 使用在 RAR 压缩文件的自解压模块文件为 default.sfx,它必须与winrar.exe 存在于相同的文件夹中以及,对于 ZIP 压缩文件则使用 zip.sfx 模块。也可以在“s”命令中,指定交替的自解压模块名。例如,要添加 DOS 自解压模块 dos.sfx 则运行:
    WinRAR sdos.sfx myinst
       
       -------------------
       s-       这个命令会从已存在的 自解压文件 (SFX) 删除自解压模块。
       WinRAR 会创建新的不含自解压模块的压缩文件,原有的自解压文件不会删除。
    例子:
    WinRAR s- rarsetup.exe      t             测试压缩文件   为了验证指定的文件,这个命令会运行虚拟文件解压,但不会写入输出数据流。这个命令行等同于 压缩文件管理 命令 测试文件。例子:
    测试全部在磁盘上的 *.rar 压缩文件
    WinRAR t -r \*.rar   u             更新压缩文件中的文件   这个命令,就好象 命令 f 一样。仅在如果压缩文件中的文件比被添加的还旧时才更新,但不像“f”的地方是,它只会添加新的文件。 
       这个命令行等同于 添加到压缩文件 并在 压缩文件名和参数对话框 中选择“添加和更新文件”的更新模式。
       因为分卷压缩文件修改是禁用的,所以这个命令无法应用在分卷压缩。另请参阅: 命令 A - 添加文件到压缩文件中   v[t,b]        详细列出压缩文件[技术信息,简洁]
      x             用绝对路径解压文件以完整路径解压文件和文件夹。保存在压缩文件中的文件夹架构,将会完整的还原恢复。此命令行等同于 压缩文件管理 命令 解压  类似的方法有 命令 e,此命令可以解压文件到当前文件夹或者指定的文件夹。
    例如,命令:
    WinRAR x Fonts *.ttf
    会从压缩文件解压 *.ttf 字体文件到当前文件夹,但下面命令:
    WinRAR x Fonts *.ttf NewFonts\
    会从压缩文件解压 *.ttf 字体文件到文件夹 NewFonts在上面的例子,你必须使用附加的倒斜线来表示目标文件夹。 <开关>
      -             停止扫描
      ac            压缩或解压后清除存档属性  此开关是设计用于备份目标的。当压缩时使用此开关,在压缩之后文件的“存档”属性将会被清除。或者如果是在解压的时候,WinRAR 会清除解压后文件的“存档”属性。  ad            添加压缩文件名到目标路径这个选项可以在解压一组压缩文件时使用。默认条件下 RAR 把从压缩文件中解压的文件放在同一目录下,但是这个开关让从每个压缩文件中解压的文件都创建一个单独的目录。
       例子:
       rar x -ad *.rar data\
       WinRAR 将为在‘data’下每一个未压缩的压缩文件创建子目录。  af       指定压缩文件格式   这个开关在 WinRAR 命令行中允许定义新压缩文件类型 <类型> 参数可以是‘rar’或‘zip’。
       例如,‘winrar a -afzip arc’将创建 arc.zip 压缩文件。
       这个开关只被 WinRAR 支持。控制台 RAR 不能创建 ZIP 压缩文件。  
      ag[格式]      使用当前日期生成压缩文件名
     当创建压缩文件时,以格式“YYYYMMDDHHMMSS”附加当前日期字符串,这对于每日更新是有用的。
       附加字符串是由“格式”参数所定义,或者如果不存在时,则使用“YYYYMMDDHHMMSS”。格式字符串可以包含下列的字符:Y           年
    M          月
    MMM          文本式的月份名 (Jan,Feb,等)
    W          文本星期名 (星期以星期一开始)
    A             数字星期名 (星期一为 1,星期日为 7)
    D            日(月)
    E           日(年)
    H            时
    M             分 (如果接续在时候面,则视为分看待)
    S             秒
    N 压缩文件数字。WinRAR 搜索要生成的名字的文件是否存在,如果发现它已经存在,将递增一个压缩文件数字,直到生成一个唯一的名字。
       上面列出的每个字符串仅表示添加到压缩文件名中的一个字符。例如,使用  WW 表示 2 数字的星期或 YYYY 定义 4 数字的年。
       如果在格式化字符串的第一个字符是‘+’,日期字符串和基本压缩文件名位置交换,所以日期将在压缩文件名之前。
       格式字符串可以包含在 '{' 和 '}' 包含的可选字符。此文本插入到压缩文件名中。
       所有其它字符都原样添加到压缩文件名。
       如果你需要更新已经存在的压缩文件,小心使用 -ag 开关。依赖于以前使用的 -ag 传送的格式字符串和时间,生成的和现有的压缩文件名可能不匹配。在这种情况下 WinRAR 会创建一个新的压缩文件,而不是更新现有文件。例子:1) 使用默认的 YYYYMMDDHHMMSS 格式    winrar a 朼g backup2) 使用 DD-MMM-YY 格式    winrar a -agDD-MMM-YY backup3) 使用 YYYYMMDDHHMM 格式    winrar a -ag+YYYYMMDDHHMM backup4) 使用 YYYY-WW-A 格式,包含区段描述rar a -agYYYY{year}-WW{week}-A{wday} backup5) 使用 YYYYMMDD 和压缩文件数字。它允许即使用 YYYYMMDD 格式掩码在同一天使用超过一次时,也产生唯一的文件名    winrar a -agYYYYMMDD-NN backup   ao            添加具有压缩属性的文件   此开关是设计用于备份目的的。当压缩时使用此开关,只会添加“存档”属性的文件到压缩文件中。例子:
    添加驱动器 C: 具有“存档”属性的全部文件到“f:backup”并清除文件的“存档”属性
    WinRAR a -r -ac -ao f:backup c:\*.*
      

  5.   

      ap<格式>      添加路径到压缩文件中   当添加文件到压缩文件以及当解压时从文件名删除时,将会使用与此开关结合的路径。
       举例来说,如果你希望添加文件 readme.txt 到压缩文件 release 的文件夹 DOCS\ENG 中,你可以运行:
    WinRAR a -apDOCS\ENG release readme.txt
    或解压 ENG 到当前文件夹:
    WinRAR x -apDOCS release DOCS\ENG\*.*
    仅可用于 RAR 和 ZIP 格式。
      as            同步压缩文件内容   如果此开关使用于压缩时,在当前添加的文件列表中不存在的被压缩文件,将会从压缩文件中删除。它可以很方便的与 -u 开关结合,用来同步压缩文件和压缩的文件夹的内容。
       举例来说,在下面命令之后:
    winrar a -u -as backup sources\*.cpp
    压缩文件 backup.rar 将只会包含源文件夹的 *.cpp 文件,其它的全部文件将会从压缩文件中删除。它看起来就好象创建新压缩文件,但有一个重要的不同: 如果从上次备份后没有修改过的文件,这项操作会比创建新压缩文件的操作快上许多。只可用于 RAR 格式。
      av            添加用户身份校验(仅注册版本可用)   如果使用此开关,WinRAR 将会在每个新建和更新的压缩文件,添加关于创建者,上次更新时间和压缩文件名的信息。如果压缩文件包含了用户身份校验信息,在被修改后此开关未指定时,用户身份校验信息将会被删除。
       在 压缩文件管理模式,你始终可以使用 显示信息 命令来读取认证信息。认证信息只支持于 RAR 压缩文件格式。
       当创建分卷压缩文件时使用“-av”开关,认证信息将会被放到每一个分卷中。
       为了启动认证信息的功能,此程序 必须注册。请阅读 许可和注册信息 章节来获得更多关于注册的信息。   如果此开关未指定,认证信息仅在 压缩配置 的“添加用户身份校验信息”选项打开时才会添加。例子:
    从当前文件夹添加全部的文件到压缩文件“release”并添加用户身份校验信息到压缩文件
    WinRAR a -av release  av-           禁用用户身份校验   即使 压缩配置 的“添加用户身份校验信息”选项是打开的,此开关仍会关闭添加认证信息。   c-            禁用注释显示
      cfg-          禁用读取配置   此开关让 WinRAR 忽略在默认 压缩配置 中的设置和 RAR 环境变量。RAR 环境变量:  使用 SET 命令,默认的开关可以添加到 RAR 的 Windows 环境变量中。大多数在变量中指定的开关只能适用当 WinRAR 运行于 命令行模式 时,而开关 -cl、-cu、-tk、-tl、-p 则可同时使用于界面模式和命令行模式。示例命令
    SET RAR=-s -m5 -md1024
    当运行于命令行模式时,将会强制 WinRAR 创建 固实压缩文件 并使用最优压缩方式和 1024 Kb 的字典。
      cl            名称转换为小写   当使用此开关时,从压缩文件解压、添加到压缩文件、修改或更新压缩文件中的文件的全部文件名都将被转换成为小写。这有时可用于当从一个有区分大小写的操作系统,移动压缩文件到另一个有区分大小写的操作系统。举例来说,从 UNIX 下解压,但压缩文件创建在 DOS 下。
    例子:
    从 port.rar 解压全部的文件并将名称转换成小写
    WinRAR x -cl port
      cu            名称转换为大写
       当使用此开关时,从压缩文件解压、添加到压缩文件、修改或更新压缩文件中的文件的全部文件名都将被转换成为大写。
    例子:
    从 port.rar 解压全部的文件并将名称转换成大写
    WinRAR x -cu port   df            压缩后删除文件   移动文件到压缩文件。此开关结合命令 a 运行时的动作等同于命令 m。
      dh            打开共享文件  允许处理由其它应用程序打开来写入的文件。
       如果应用程序允许度去访问文件时,这个开关有用,但是如果文件的所有访问类型都被禁止,文件打开操作仍然会失败。
       此开关是有危险性的,因为它允许添加文件到压缩文件,而文件可能正由其它应用程序进行修改中。使用时请小心。
       如果未指定此开关,则依据在 压缩配置 的“打开共享的文件”选项设置而定。
    例子:
    WinRAR  a  -dh  dbf  *.dbf   ds            对固实压缩文件禁用名称排序   此开关只对 固实 RAR 压缩文件有意义。固实压缩文件的压缩率是依据文件的顺序而定的,默认的 WinRAR 添加到固实压缩文件的文件是按扩展名排序的。你可以使用此开关 -ds 关闭此项排序,并试着设置更为最优化的文件顺序。通常类似的数据是被添加在一起的。
    例子:
    WinRAR  a  -s  -ds  tools  *.com  *.exe  *.doc  *.txt  *.*
    文件将会以: *.com、*.exe、*.doc、*.txt、全部其它文件类型的顺序来添加。
    注意:文件 rarfiles.lst 也可以用来定义固实压缩文件中的文件顺序   e[+]<属性>    设置文件排除和包括属性
       指定文件排除属性掩码。<属性> 是一个十进制、八进制、(以‘0’开头) 或十六进制 (以‘0x’开头) 格式的数字。如果<属性>和文件属性 AND 逻辑运算后结果非零,文件不被添加到压缩文件中。
       默认,在<属性>没有‘+’标记,此开关定义排除掩码。如果对<属性>和文件属性按位进行 AND 逻辑运算的结果不为 0,则文件将不会被加入到压缩文件中。   如果‘+’符号存在,它指定包含掩码。只有具有在掩码中指定的属性中的至少一种的文件会被添加到压缩文件中。
       在 Windows 版本中也可以使用符号 D, S, H, A 和 R 代替数字掩码来指出带有系统、隐藏、存档和只读属性的文件夹和文件。给出的属性的顺序没有特别的意义。
       允许在命令行中把 -e<atr> 和 -e+<atr> 都指定。
    例子:
    1) 仅有文件夹名字而不包含它们的内容
    WinRAR a -r -e+d folders
    2) 不压缩系统和隐藏属性的文件:WinRAR a -esh files 
      ed            不添加空目录 这个开关指出空目录不被存储到被创建的压缩文件中。当解压这样一个压缩文件时, RAR 会基于他们内部的文件路径创建非空的目录。关于空目录的信息丢失。非空目录除了名字外(访问权限, 流, 等。)其他所有属性全部丢失, 所以只有在你不需要保留这样的信息时使用此开关。 
      en            不添加"压缩文件结束"标志   默认情况下,RAR 在新建或更新压缩文件时,在结束时添加“压缩文件结束”块。它允许跳过象数字安全签名等扩展数据,但是在一些特定条件下禁用这些功能可能有用。例如,如果在一个压缩文件在两个系统之间通过不可靠的连接传递,并且同时发送者在它里面添加新文件时,它可能对确认已经接受的文件部分不会在传送部分之间的另一个结束被修改很重要。
       这个开关不能用在分卷上,因为压缩文件结束块包含正确处理卷的重要信息。   ep            从名称中排除路径   包含此开关时,文件在加入压缩文件时不会包含路径信息。这可能会有在压缩文件中,存在数个相同名称的结果。例子:
    从当前磁盘压缩全部的 *.bas 文件而不含路径。
    WinRAR  a  -r  -ep  bsources  \*.bas   ep1           从名称中排除基本目录
    不存储在命令行所输入的路径。
    例子:
    将所有 tmp 文件夹内的全部文件和文件夹加入到压缩文件 test,但是在压缩的路径名不包含「tmp\」
    WinRAR  a  -r  -ep1  test  tmp\*
    此等同于命令:cd tmp
    WinRAR a -r ..\test
    cd ..   ep2           展开为完整路径
    当压缩时存储完整的文件路径 (除了驱动器号与前缀的反斜线)。 
      ep3           扩展路径为包含盘符的完全路径   压缩时如果使用此开关则保存和恢复包括盘符的完全的文件路径。磁盘分隔符(冒号)被下划线字符替换。
       如果你解压时使用 -ep3,它把下划线改回为冒号并且把文件解压到它们原始的目录和磁盘中。如果用户也指定了目标路径,它会被忽略。
       此开关对于把数个磁盘备份到同一个压缩文件有帮助。例如,你可以运行:
       WinRAR a -ep3 -r backup.rar c:\ d:\ e:\
       来创建备份并且:
       WinRAR x -ep3 backup.rar
       来恢复它。   小心使用 -ep3 开关,只有你确认压缩文件不包含任何恶意文件。你可以在 -ep3 开关 的描述中看到更多关于“存储包含盘符的完全路径”模式的可能的好处和危险,它是与此 WinRAR 选项等价的命令行。换句话说,如果是你自己创建的压缩文件或你完全相信它的作者才使用它。此开关允许覆盖在你的计算机上任何地方的任何文件,包括重要的系统文件和通常仅用于备份和恢复的目的。
      f             刷新文件   可使用于压缩文件解压或是创建时。命令字符串“a -f”等同于命令 f。你也可以使用开关“-f”于命令 m。
       如果开关“-f”使用于命令 x 或 e,此时仅旧文件会被从压缩文件解压的新版本给替换。压缩后的文件,没有符合的未压缩文件,则不会解压。
       界面模式对等的开关是位于 压缩文件名和参数 对话框的“只刷新已存在的文件”选项,以及 解压路径和选项对话框 的“只刷新已存在的文件”选项。   hp[密码]      同时加密文件数据和文件头
       这个开关和 -p[p] 类似,但是开关 -p 只加密文件数据,而使文件名等其它信息可见。这个开关加密所有包括文件数据、文件名、大小、属性、注释和其它块等所有可感知压缩文件区域,所以它提供了更高的安全等级。
       在压缩文件中使用-hp 加密,没有密码甚至不可能查看文件列表。   例子:
       将添加文件 report.txt 到加密的压缩文件 secret.rar 中,使用密码‘fGzq5yKw’
       rar a -hpfGzq5yKw secret report.txt
      ibck 在后台运行winrar  
       当开始压缩或是解压操作时,将 WinRAR 最小化放到任务栏指示区。
       界面模式对等的开关是位于 压缩文件名和参数 对话框的“后台压缩”选项   id[c,d,p,q]   禁用消息
      ieml[属性]    用 E-mail 发送压缩文件   附加一个使用添加命令创建或被更新的压缩文件到 E-mail 信息中。你需要有 MAPI 兼容的 E-mail 客户端来使用这个开关(大部分现代的 E-mail 程序支持 MAPI 接口)。
       你可以在开关中直接输入详细 E-mail 地址或留为空白。在以后可以由你的 E-mail 程序询问。可以使用用分号或逗号分开的数个地址。
       如果你添加一个‘.’字母到 -ieml,成功附加到 E-mail 中后压缩文件会被删除。   如果创建多卷压缩文件使用这个开关,每一卷都附加单独的 E-mail 附件中。
      iicon  指定自解压图标   指定要创建或更新的自解压压缩文件的图标。<名称>参数是 .ico 图标文件的名字。这个文件必须包括至少一个 32x32 图标, 16 或 256 色(或全有)。推荐不必包含16x16 图标。大小超过 32x32 和颜色数超过 256 色的图标仅被基于 NT 的 Windows (NT, 2000, XP, 2003 等)支持,Windows 95, 98 和 Me 不支持。如果你要使用大的图标大小和压缩深度,则你不能使用任何第三方可执行文件压缩程序压缩自解压模块。   这个开关等价于 自解压选项:图标和文本 对话框的“从文件加载图标”的命令行命令。   例子:
       1) 把 c:\myfiles 文件夹的内容添加到 setup.exe 自解压文件中,使用图标c:\myicons\ver1.ico 作为自解压文件的图标
           winrar a -sfx -iiconc:\myicons\ver1.ico setup.exe c:\myfiles
       2) 把已经存在的自解压文件 setup.exe 替换为 c:\myicons\ver2.ico
           winrar s -iicon c:\myicons\ver2.ico setup.exe
      

  6.   

    windows下用7zip的命令行版本会比较好,下载包己有教学
      

  7.   

    <?PHP
    class rar
    {public $Path;   //文件路径public $Save;   //保存路径public $Object;   //Wscript.Shell对象实例function rar(){   //构造函数$this->Object = new com("Wscript.Shell");    //实例化一个Shell对象}function Release(){    //解压方法$this->Object->run("WinRAR x $this->Path $this->Save",1,false);  //Path要解压的文件名及路径  Save保存路径if($this->Object == true){return true;}else{return false;}}function Pressure(){   //压缩方法$this->Object->run("WinRAR a $this->Save $this->Path",1,false);   //Save压缩后保存的路径及文件名  Path要压缩的路径if($this->Object == true){return true;}else{return false;}}
    }
      

  8.   

    $this->Object = new com("Wscript.Shell"); //实例化一个Shell对象com 是什么呢