命令的调试使用

 

以下是从网上查找来的 linux 命令 zip 的使用方法。如果有不知道命令如何使用你可以 man+[ 命令 ] 或者是 [ 命令 ]+ -h ”,来查看命令的使用方法。

 

zip

 

功能说明:压缩文件。

语  法: zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b < 工作目录 >][-ll][-n < 字尾字符串 >][-t < 日期时间 >][-< 压缩效率 >][ 压缩文件 ][ 文件 ...][-i < 范本样式 >][-x < 范本样式 >]

补充说明: zip 是个使用广泛的压缩程序,文件经它压缩后会另外产生具 有 ".zip" 扩展名的压缩文件。

参  数:
-A 调整可执行的自动解压缩文件。
-b< 工作目录 > 指定暂时存放文件的目录。

-c 替每个被压缩的文件加上注释。
-d 从压缩文件内删除指定的文件。
-D 压缩文件内不建立目录名称。
-f 此参数的效果和指定 "-u" 参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
-F 尝试修复已损坏的压缩文件。
-g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h 在线帮助。
-i< 范本样式 > 只压缩符合条件的文件。
-j 只保存文件名称及其内容,而不存放任何目录名称。
-J 删除压缩文件前面不必要的数据。
-k 使用 MS-DOS 兼容格式的文件名称。
-l 压缩文件时,把 LF 字符置换成 LF+CR 字符。
-ll 压缩文件时,把 LF+CR 字符置换成 LF 字符。
-L 显示版权信息。
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-n< 字尾字符串 > 不压缩具有特定字尾字符串的文件。
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q 不显示指令执行过程。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。
-S 包含系统和隐藏文件。
-t< 日期时间 > 把压缩文件的日期设成指定的日期。
-T 检查备份文件内的每个文件是否正确无误。
-u 更换较新的文件到压缩文件内。
-v 显示指令执行过程或显示版本信息。
-V 保存 VMS 操作系统的文件属性。
-w 在文件名称里假如版本编号,本参数仅在 VMS 操作系统下有效。
-x< 范本样式 > 压缩时排除符合条件的文件。
-X 不保存额外的文件属性。
-y 直接保存符号连接,而非该连接所指向的文件,本参数仅在 UNIX 之类的系统下有效。
-z 替压缩文件加上注释。
-$ 保存第一个被压缩文件所在磁盘的卷册名称。
-< 压缩效率 > 压缩效率是一个介于 1-9 的数值。

-P 压缩并加密

 

例如使用 zip 打包加密一个文件   :

         zip -jP 123456  fileTest.zip ./fileTest/*

 

调用 linux 命令介绍

                 

在 java 的 rt.jar 包中 java.lang 中有 Runtime 以及 Process

 

Runtime rt = Runtime.getRuntime() ;

Process p = rt.exec() ;

   

   

 Process

exec (String command)
           在单独的进程中执行指定的字符串命令。

 Process

exec (String[] cmdarray)
           在单独的进程中执行指定命令和变量。

 Process

exec (String[] cmdarray, String[] envp)
           在指定环境的独立进程中执行指定命令和变量。

 Process

exec (String[] cmdarray, String[] envp, File dir)
           在指定环境和工作目录的独立进程中执行指定的命令和变量。

 Process

exec (String command, String[] envp)
           在指定环境的单独进程中执行指定的字符串命令。

 Process

exec (String command, String[] envp, File dir)
           在有指定环境和工作目录的独立进程中执行指定的字符串命令。

 

不清楚请查阅 jdk api ;

 

依照功能的需要,使用不同的参数的方法。

 

 

例如:

( 1 ) 运行“ ls ”   , 并查看运行的结果:

 

Runtime rt = Runtime.getRuntime ();   
         Process p = rt.exec( "ls" );   
            //int exitValue = p.exitValue();   
            //int exitValue = p.waitFor();   
         InputStream is = p.getErrorStream();   
         InputStreamReader isr =  new  InputStreamReader(is);   
         BufferedReader br =  new  BufferedReader(isr);   
         String line =  null ;   
         System. out .println( "<ERROR>" );   
          while ((line = br.readLine())!= null ){   
              System. out .println(line);   
              System. out .println( "</ERROR>" );   
               int  exitValue = p.waitFor();   
System. out .println( "Process exitValue=" +exitValue);   
         }

( 2 ) 运行“ zip -jP 123456  fileTest.zip ./fileTest/* ”   , 并查看运行的结果: shell 命令的执行。

 

String[] command = {“sh”,“-c”, “ zip -jP 123456   fileTest.zip ./fileTest/*.* ” } ;
Runtime rt = Runtime.getRuntime ();   
         Process p = rt.exec( "ls" );   
            //int exitValue = p.exitValue();   
            //int exitValue = p.waitFor();   
         InputStream is = p.getErrorStream();   
         InputStreamReader isr =  new  InputStreamReader(is);   
         BufferedReader br =  new  BufferedReader(isr);   
         String line =  null ;   
         System. out .println( "<ERROR>" );   
          while ((line = br.readLine())!= null ){   
              System. out .println(line);   
              System. out .println( "</ERROR>" );   
               int  exitValue = p.waitFor();   
System. out .println( "Process exitValue=" +exitValue);   
         }