unix中jar命令详解
- 格式:doc
- 大小:63.00 KB
- 文档页数:7
在Linux 上,`java -jar` 命令用于执行Java 可执行JAR 文件。
以下是`java -jar` 命令的基本用法:
```bash
java -jar yourfile.jar
```
其中`yourfile.jar` 是你要执行的Java 可执行JAR 文件的名称。
使用这个命令,Java 将会加载并执行JAR 文件中的主类。
如果你需要指定JVM 参数,你可以在`java -jar` 命令后面添加JVM 参数,例如:
```bash
java -Xms512m -Xmx1024m -jar yourfile.jar
```
在这个例子中,我们指定了初始堆大小为512MB (`-Xms512m`),最大堆大小为1024MB (`-Xmx1024m`)。
另外,如果你的JAR 文件依赖其他的JAR 文件,你需要在执行`java -jar` 命令时使用`-cp` 参数来指定classpath,例如:
```bash
java -cp yourdependency.jar -jar yourfile.jar
```
这样可以确保Java 虚拟机能够找到并加载JAR 文件所依赖的其他类。
希望这些信息能够帮助你理解在Linux 上使用`java -jar` 命令的基本用法。
unix系统终端部分常用指令
1. clear:清屏,将当前终端窗口内容清除。
2. echo:显示指定的字符串到终端窗口。
3. pwd:显示当前所处的目录位置。
4. cd:切换当前工作目录。
5. ls:显示当前目录的文件列表。
6. mkdir:在当前目录中创建新的目录。
7. rmdir:移除指定的空目录。
8. cp:复制指定的文件或目录。
9. mv:移动或重命名指定的文件或目录。
10. rm:删除指定的文件或目录。
11. cat:显示文件的内容。
12. grep:搜索字符串、文本、正则表达式模式等。
13. find:在指定的目录下搜索文件。
14. file:显示给定文件的类型。
15. chmod:改变文件或目录的访问权限。
16. wc:统计指定文件的行数、字数、字节数。
17. timestamp:显示或修改文件的时间戳。
18. kill:结束指定进程。
19. ps:显示当前用户的进程状态信息。
20. exit:退出当前登录系统的终端会话。
- 1 -。
2.4 UNIX常用命令介绍用户对某一操作系统的认识,往往是从使用和接触操作系统开始的,而接触操作系统最常用的方法就是使用操作系统的命令。
尽管现代操作系统都对用户提供交互式的图形界面,但在使用操作系统时仍不可避免地要用到命令操作方式,这是因为图形界面的处理也是建立在命令处理的基础之上的。
有经验的人都知道,使用命令处理的效率往往会比使用图形界面处理高出很多,而可视化的图形界面主要解决的问题是提供友好交互和摆脱枯燥的命令记忆方式。
2.4.1 UNIX命令使用方法当某个用户正确地通过了系统的注册和登录后,就进入到UNIX的命令管理程序shell的第一个进程中。
shell可以完成UNIX命令的解释执行过程,它大体上可以分成两类:一类是s hell的内部命令,另一类是shell的外部命令。
对用户来讲,内、外部命令在使用方法上没有太多的差异,只是在响应时间上略有不同。
当用户发出内部命令时,系统可直接从内存中选择调用与执行。
而shell的外部命令是那些功能较强、占用空间较大的扩展命令,它们一般不包含在shell中,因此在系统启动时并不被装入内存,只是在使用时才从系统的指定存储介质中调入内存,用完后就释放所占用的内存空间。
外部命令往往功能强大,因此所占用的磁盘空间和内存空间都比较大,甚至有些外部命令实际上就是一个实用程序,它所占用的空间和处理过程的复杂度可以与一个小型系统规模相比,因此对外部命令的管理通常包含着对内、外存空间的控制和管理。
1. UNIX的命令格式使用UNIX命令的方法可以有多种,例如,可以在命令行上输入命令,或是将命令编写在批处理文件中。
无论怎样,命令的使用格式是统一的,UNIX的一般命令格式为:Command[-options][arguments]其中:Command表示UNIX命令名。
[options]表示命令的执行选项,可以取默认值。
[arg uments]表示命令的执行参数,可以默认。
jar file和executable jar file在Java开发中,JAR(Java Archive)文件是一种类似于ZIP格式的文件,用于将Java类、相关资源和元数据打包在一起。
通过使用JAR文件,可以方便地共享和部署Java应用程序。
而可执行的JAR文件是指含有可执行入口点(main方法)的JAR文件,可以直接运行程序。
要创建一个JAR文件,可以使用Java开发工具包(JDK)自带的jar命令行工具。
下面是一些创建JAR文件的常用命令示例:1. 创建一个空的JAR文件:```jar cvf myjar.jar```2. 将某个目录下的所有文件和文件夹添加到JAR文件中:```jar cvf myjar.jar mydirectory```3. 添加指定的文件到JAR文件中:```jar uvf myjar.jar myfile.class```4. 添加一个清单文件(MANIFEST.MF)到JAR文件中:```jar cvfm myjar.jar MANIFEST.MF myfile.class```创建可执行的JAR文件需要在清单文件中指定程序的入口点(main类名)。
下面是一个典型的清单文件示例:```Manifest-Version: 1.0Main-Class: com.example.MyMainClass```要将JAR文件设置为可执行,可以使用以下命令:```jar cvfm myexecutable.jar MANIFEST.MF myfile.class```执行可执行的JAR文件可以在命令行中使用java命令:```java -jar myexecutable.jar```生成可执行JAR文件的过程中,需要确保所有依赖的类和资源都被正确地包含在JAR文件中。
通常,会将依赖的JAR文件放置在特定的目录下,并使用Class-Path属性指定这些依赖。
值得注意的是,JAR文件在执行时,会自动解压并将文件内容加载到内存中,这可以提高程序的运行效率。
用于解压jar文件的命令在软件开发过程中,我们经常会遇到需要解压jar文件的情况。
jar 文件是一种Java归档文件,包含了Java程序的类、资源文件等。
解压jar文件可以帮助我们查看、修改和提取其中的内容。
本文将介绍一些常用的命令,以帮助您轻松完成jar文件的解压操作。
一、使用jar命令解压jar文件jar命令是Java开发工具包(JDK)自带的命令行工具,可以用于创建、查看和解压jar文件。
要解压jar文件,可以使用以下命令:jar -xf <jar文件名>例如,要解压名为example.jar的jar文件,可以运行以下命令:jar -xf example.jar执行该命令后,jar文件将被解压到当前目录下的一个与文件名相同的文件夹中。
您可以在该文件夹中查看和修改jar文件中的内容。
二、使用unzip命令解压jar文件除了jar命令,还可以使用unzip命令解压jar文件。
unzip命令是Linux和Unix系统中常用的解压命令,也可以用于解压jar文件。
要解压jar文件,可以使用以下命令:unzip <jar文件名>例如,要解压名为example.jar的jar文件,可以运行以下命令:unzip example.jar执行该命令后,jar文件将被解压到当前目录下。
您可以在当前目录中查看和修改jar文件中的内容。
三、使用7-Zip解压jar文件除了命令行工具,还可以使用图形化界面的压缩软件7-Zip来解压jar文件。
7-Zip是一款开源的压缩软件,支持多种格式的压缩文件,包括jar文件。
要解压jar文件,可以按照以下步骤进行操作:1. 下载并安装7-Zip软件;2. 打开7-Zip软件,找到要解压的jar文件;3. 右键点击jar文件,选择“7-Zip”菜单,然后选择“解压到指定文件夹”;4. 选择解压的目标文件夹,点击“确定”按钮。
执行以上步骤后,jar文件将被解压到指定的文件夹中。
UNIX常⽤命令UNIX 常⽤命令50個最常⽤的Unix/Linux命令tar grep find ssh sedawk vim diff sort exportargs ls pwd cd gzipbzip2 unzip shutdown ftp crontabservice ps free top dfkill rm cp mv catmount chmod chown passwd mkdirifconfig uname whereis whatis locateman tail less su mysqlyum rpm ping date wget⽂件和⽬錄:這些命令允許你創建的⽬錄和處理⽂件。
命令描述cat 顯⽰⽂件內容cd 改變當前⽬錄chgrp 改變⽂件或⽬錄之群組擁有權chmod 改變⽂件或⽬錄屬性cp 拷⾙檔案file 顯⽰檔案型態find 找尋檔案grep 在本⽂檔中找尋字串head 顯⽰⽂件的前幾⾏ln 連結檔案或⽬錄ls 將某⼀個⽬錄的內容顯⽰出來mkdir 創建⽬錄more 以分⾴形式顯⽰數據mv 搬移或重新命名檔案od 以⼋進位查看檔案內容pwd 顯⽰現在⼯作⽬錄的路徑rm 刪除⽂件或⽬錄rmdir 刪除⼦⽬錄,⽬錄內須無檔案tail 顯⽰⽂件的最後幾⾏touch 改變⽂件或⽬錄之最後修改時間操作数据:可以⽐較改變⽂件的內容,並⽤下⾯的命令。
命令描述awk 模式和扫描处理语⾔cmp ⽐較兩個⽂件的內容comm ⽐較排序數據cut 挑出檔案的部份欄資料diff ⽐較⽂件或⽬錄之內容dircmp 對⼆個⽬錄下的檔案進⾏⽐較expand Expand tabs to spacesjoin 結合兩個有共同的連結欄位的檔案perl 數據操作語⾔sed Stream text editorsort 排序檔案內容split 將⽂件拆分為較⼩的⽂件csplit 將⼀個⼤的檔案分割成若⼲個較⼩的檔tar 將檔案以保存檔⽅式從磁帶或磁碟中取出或存放tr 字元轉換的處理uniq 去除檔案相同的⾏(須相鄰)wc 計算檔案的⾏數、字數及字元數vi 開啟 vi ⽂件編輯器vim Opens vim text editorfmt Simple text formatterspell Check text for spelling errorispell Check text for spelling errorispell Check text for spelling erroremacs GNU project Emacsex, edit Line editoremacs GNU project Emacsemacs GNU project Emacs压缩⽂件:⽂件可能被壓縮以節省空間。
LINX和UNIX常用命令常用命令cd 是最基本的进入目录操作ls 参数-l/-a/-d/-i是查看子目录及文件的操作ll 也是子看子目录及文件的,但是它有显示目录及文件的权限说明。
Cp 和 ls -l 的作用一样,cp 参数-i/-f/-r 将文件和目录从一个目录拷贝到另一个目录。
ln 参数-s/-f 链接命令,是给系统中已有的文件指定另一个名称。
就像快方式一样mv 参数-i/-f 将目录或文件移动的命令。
另一个功能是修改文件或目录名(何移动的目录在原目录的话)。
rm 参数-i/-f/-r 删除文件 -i删除时需要确认,-f删除时不需要确认,-r删除目录时将里面的子目录和文件一起删除mkdir 参数-p/-m 创建目录 -p创建目录时其父目录不存在时首先创建父目录-m创建目录时指定权限rmdir 参数-p 删除目录 -p删除目录下所有子目录rename 重命名more 查看文件信息,如一页显示不过来,会分页显示cat 在屏幕上显示文件,连接两个或多个文件。
less 和more一样的功能,但它多了能往回看的功能head 查看文件开头部分tail 查看文件末尾部分。
echo 显示文字。
file 判断文件类型。
type 显示命令所在的路径。
chmod 更改文件及目录读写权限chgrp 改变文件或目录的所属组。
chown 改变文件或目录所属用户。
tar 是解压和压缩文件的功能参数 -c-v-f-z-xwhatis 提问命令问计算机"这是什么"whereis 同上"它在哪里"who 看有谁在登录系统ww 看谁登录后干了什么whoami 显示自身用户名称。
last 显示用户本次和曾经的登陆时间。
df 检查文件系统的空间占用情况。
mount 挂载命令。
可以挂载一个光驱,U盘,硬盘等等umount 取消挂载find 查找文件命令。
类似搜索功能,但在当前目录及子目录下搜索ps -axj 显示进程信息,组ID,进程ID,用户ID等kill 中止进程命令。
HPUNIX操作系统管理常用命令1. uname命令:用于显示操作系统的名称和版本。
例如,uname -a 可以显示全部的系统信息。
2. who命令:用于显示当前登录到系统的用户信息。
例如,who -u 可以显示包含详细信息的用户列表。
3. ps命令:用于显示当前系统上运行的进程信息。
例如,ps -ef可以显示所有进程的详细信息。
4. top命令:用于实时监视系统的资源使用情况。
例如,top -u可以显示按照CPU使用率排序的进程列表。
5. kill命令:用于终止正在运行的进程。
例如,kill PID可以终止具有指定进程ID的进程。
6. df命令:用于显示文件系统的磁盘空间使用情况。
例如,df -h 可以显示以人类可读的格式显示磁盘空间的详细信息。
7. du命令:用于计算目录或文件所占用的磁盘空间。
例如,du -sh 可以以人类可读的格式显示目录的磁盘空间使用情况。
8. ls命令:用于显示文件和目录的列表。
例如,ls -l可以显示以长格式列出的文件和目录。
9. cd命令:用于更改当前工作目录。
例如,cd /home可以将当前目录更改为/home。
10. mkdir命令:用于创建新的目录。
例如,mkdir mydir可以创建名为mydir的新目录。
11. rm命令:用于删除文件或目录。
例如,rm myfile.txt可以删除名为myfile.txt的文件。
12. cp命令:用于复制文件或目录。
例如,cp myfile.txt mydir可以将myfile.txt复制到mydir目录中。
13. mv命令:用于移动文件或目录。
例如,mv myfile.txt mydir可以将myfile.txt移动到mydir目录中。
14. cat命令:用于显示文件的内容。
例如,cat myfile.txt可以显示名为myfile.txt的文件内容。
15. tail命令:用于显示文件的尾部内容。
例如,tail -n 10 myfile.txt可以显示myfile.txt文件的最后10行。
转自chinaunix】JAR命令&JAR包详解2008-04-10 18:01 684人阅读评论(0) 收藏举报原文地址/u1/38934/showart.php?id=39201 2JAR命令&JAR包详解write by Jack.HaoJAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。
当然也是有区别的,JAR包中有一个META-INF/MANIFEST.MF文件,当你找成JAR包时,它会自动生成。
JAR包是由JDK安装目录/bin/jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib/tool.jar工具包中的类。
这些细节就不用管它了。
让我们看看它怎么么使用吧:<!--=========================Jack.Hao=================================-->一.jar命令参数:jar命令格式:jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名...其中{ctxu}这四个参数必须选选其一。
[v f m e 0 M i ]是可选参数,文件名也是必须的。
-c 创建一个jar包-t显示jar中的内容列表-x解压jar包-u添加文件到jar包中-f指定jar包的文件名-v 生成详细的报造,并输出至标准设备-m指定manifest.mf文件.(manifest.mf文件中可以对jar包及其中的内容作一些一设置)-0产生jar包时不对其中的内容进行压缩处理-M不产生所有文件的清单文件(Manifest.mf)。
这个参数与忽略掉-m参数的设置-i 为指定的jar文件创建索引文件-C表示转到相应的目录下执行jar命令,相当于cd到那个目录,然后不带-C执行jar命令<!--===========================Jack.Hao==========================-->二.jar使用范例:(1)创建jar包jar cf hello.jar hello利用test目录生成hello.jar包,如hello.jar存在,则覆盖(2)创建并显示打包过程jar cvf hello.jar hello利用hello目录创建hello.jar包,并显示创建过程例:E:/>jar cvf hello.jar hello标明清单(manifest)增加:hello/(读入= 0) (写出= 0)(存储了0%)增加:hello/TestServlet2.class(读入= 1497) (写出= 818)(压缩了45%)增加:hello/HelloServlet.class(读入= 1344) (写出= 736)(压缩了45%)增加:hello/TestServlet1.class(读入= 2037) (写出= 1118)(压缩了45%)(3)显示jar包jar tvf hello.jar查看hello.jar包的内容指定的jar包必须真实存在,否则会发生FileNoutFoundException。
(4)解压jar包jar xvf hello.jar解压hello.jar至当前目录(5)jar中添加文件jar uf hello.jar HelloWorld.java将HelloWorld.java添加到hello.jar包中(6)创建不压缩内容jar包jar cvf0 hello.jar *.class利用当前目录中所有的.class文件生成一个不压缩jar包(7)创建带manifest.mf文件的jar包jar cvfm hello.jar manifest.mf hello创建的jar包多了一个META-INF目录,META-INF止录下多了一个manifest.mf文件,至于manifest.mf的作用,后面会提到.(8)忽略manifest.mf文件jar cvfM hello.jar hello生成的jar包中不包括META-INF目录及manifest.mf文件(9)加-C应用:jar cvfm hello.jar mymanifest.mf -C hello/表示在切换到hello目录下然后再执行jar命令(10)-i为jar文件生成索引列表当一个jar包中的内容很好的时候,你可以给它生成一个索引文件,这样看起来很省事。
jar i hello.jar执行完这条命令后,它会在hello.jar包的META-INF文件夹下生成一个名为INDEX.LIST的索引文件,它会生成一个列表,最上边为jar包名。
(11)导出解压列表jar tvf hello.jar >hello.txt如果你想查看解压一个jar的详细过程,而这个jar包又很大,屏幕信息会一闪而过,这时你可以把列表输出到一个文件中,慢慢欣赏!(12)jar -cvf hello.jar hello/*例如原目录结构如下:hello|---com|---org你本想只把com目录和org目录打包,而这时jar命令会连同hello目洋也一块打包进。
这点大家要注意。
jar命令生成的压缩文件会包含它后边出的目录。
我们应该进入到hello目录再执行jar命令。
注意:manifest.mf这个文件名,用户可以任指定,但jar命令只认识Manifest.mf,它会对用户指定的文件名进行相应在的转换,这不需用户担心。
<!--===========================Jack.Hao==========================-->三.Manifest.mf文件编写规则:manifest.mf的编写一定要注意一些细节,它是很苛刻的,我在此也载过不少跟头,谁让它这么小气呢,没办法,所以专门给大家列出来。
(1) 不能有空行和空格的地方第一行不可以是空行( 第一行的行前不可以有空行),行与行之间不能有空行,第行的行尾不可以有空格(2) 一定要有空行的地方最后一行得是空行(在输完你的内容后加一个回车就OK)(3) 一定有空格的地方key: value 在分号后面一定要写写一个空格<!--=========================Jack.Hao=================================--> 四.怎样使用jar包中的类还是写个小例子吧,这样直观!public final class Person{public static int age(){return 30;}}-> javac Person.java->jar cvf person.jar Person.class 将上面的文件打成一个jar包再写一个类对其进行调用:public class MyAge{public static void getAge(){System.out.println(Person.age());}}->javac MyAge.java->java -classpath person.jar MyAge************调试一下这个程序*******************<!--=========================Jack.Hao=================================--> 五.创建可执行jar包有时自己写个程序,类一大堆,时间一长连自己都不知道那个是主类,而且有可能用到图片或其它文件一大堆,看得也乱,这时你可以考虑把它做成一个可执行jar包...(1) 编辑manifest.mf文件加入下面一行Main-Class: MyApplet注意:Main-Class的大小定,冒号后的空格,MyApplet后一定输入回车,然后保存。
(2) 打包jar cvfm FirstApplet.jar manifest.mf MyApplet.class注意:manifest.mf指定为存放Mani-Class: MyApplet文件的文件名(3) 可执行jar的使用java -jar FirstApplet.jar或也可以<applet></applet>中使用:<applet code=MyApplet archive=FirstApplet.jar width=200 height=100></applet>注意:类并没有给出,大家随便写一个就行,类名包名自己随意定,相应的更改就可以...<!--=========================Jack.Hao=================================-->六.扩展自己的类在JDK的安装目录/jre/lib/ext目录下,SUN为大家为我们扩展自己类的提供了方便,大家可以将自己的类文件打成.jar包放在此目录下,它由ExtClassLoader类装器负责进行装载,ExtClassLoader类装器是AppClassLoader类装载器的父装载器,AppClassLoader主要负责加载CLASSPATH路径下的文件,而在java中采用的又是委托父装载器的机制,所以此目录下存放的jar 中的类文件不做任何的设置,类装载器就可以找到正常的加载,是不是很方便啊,呵...如果你的.jar是给applet小应用程序看的,可以在打成jar包之前,在其manifest.mf加入下面两行。
Class-Path: FirstApplet.jarClass-path: SecondApplet.jarMain-Class: MyApplet注意:Class-path可以设置多项,直接写jar包名既可。
Main-Class主要当jar中有多个.class 类文件时,java并不知道那个才是主类,所以要指定,如果jar包中只有一个类当然可以不指定。
Java调用类的顺序:java/lib/ext中的类--->Manifest.mf中指定的类-->当前目录中的类-->set CLASSPATH中指定的类。
<!--=========================Jack.Hao=================================-->七.调用URL网络上的jar包(1) 生成jar包的URLURL u=new URL("jar:"+"FirstAppplet.jar"+!/");(2) 建立jarURLConnection对象JarURLConnection juc=(JarURLConnection)u.openConnection();(3) 返回jar包中主类的名字Attributes attr=juc.getMainAttributes();String name=attr.getValue("Mani-Class");一定要确保你的jar包中的manifest.mf中已正确的设置了Mani-Class属性,再强调一下一定要注意规则。