Linux.中国 - 开源社区

 找回密码
 骑士注册

QQ登录

微博登录


Java 程序员应会的 Linux 命令

2015-12-19 14:27    评论: 6 收藏: 11    

作为一个Java开发人员,有些常用的Linux命令必须掌握。即时平时开发过程中不使用Linux(Unix)或者mac系统,也需要熟练掌握Linux命令。因为很多服务器上都是Linux系统。所以,要和服务器机器交互,就要通过shell命令。

本文并不会对所有命令进行详细讲解,只给出常见用法和解释。具体用法可以使用--help查看帮助或者直接通过google搜索学习。

1.查找文件

find / -name filename.txt 根据名称查找/目录下的filename.txt文件。

find . -name "*.xml" 递归查找所有的xml文件

find . -name "*.xml" |xargs grep "hello world" 递归查找所有文件内容中包含hello world的xml文件

grep -H 'spring' *.xml 查找所以有的包含spring的xml文件

find ./ -size 0 | xargs rm -f & 删除文件大小为零的文件

ls -l | grep '.jar' 查找当前目录中的所有jar文件

grep 'test' d* 显示所有以d开头的文件中包含test的行。

grep 'test' aa bb cc 显示在aa,bb,cc文件中匹配test的行。

grep '[a-z]\{5\}' aa 显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

2.查看一个程序是否运行

ps -ef|grep tomcat 查看所有有关tomcat的进程

3.终止线程

kill -9 19979 终止线程号位19979的进程

4.查看文件,包含隐藏文件

ls -al

5.当前工作目录

pwd

6.复制文件

cp source dest 复制文件

cp -r sourceFolder targetFolder 递归复制整个文件夹

scp sourecFile romoteUserName@remoteIp:remoteAddr 远程拷贝

7.创建目录

mkdir newfolder

8.删除目录

rmdir deleteEmptyFolder 删除空目录

rm -rf deleteFile 递归删除目录中所有内容

9.移动文件

mv /temp/movefile /targetFolder

10.重命名

mv oldNameFile newNameFile

11.切换用户

su -username

12.修改文件权限

chmod 777 file.java file.java 的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行

13.压缩文件

tar -czf test.tar.gz /test1 /test2

14.列出压缩文件列表

tar -tzf test.tar.gz

15.解压文件

tar -xvzf test.tar.gz

16.查看文件头10行

head -n 10 example.txt

17.查看文件尾10行

tail -n 10 example.txt

18.查看日志类型文件

tail -f exmaple.log 这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置)。

19.使用超级管理员身份执行命令

sudo rm a.txt 使用管理员身份删除文件

20.查看端口占用情况

netstat -tln | grep 8080 查看端口8080的使用情况

21.查看端口属于哪个程序

lsof -i :8080

22.查看进程

ps aux|grep java 查看java进程

ps aux 查看所有进程

23.以树状图列出目录的内容

tree a

24. 文件下载

wget http://file.tgz

curl http://file.tgz

25. 网络检测

ping www.just-ping.com

26.远程登录

ssh userName@ip

27.打印信息

echo $JAVA_HOME 打印java home环境变量的值

28.java 常用命令

java javac jps ,jstat ,jmapjstack

29.其他命令

svn git maven

28.linux命令学习网站:

http://explainshell.com/

参考资料:

Linux端口被占用的解决(Error: JBoss port is in use. Please check)

linux 中强大且常用命令:find、grep

Linux命令

欢迎补充!~

发表评论


最新评论

我也要发表评论

夜域诡士 [Firefox 38.0|GNU/Linux] 2015-12-24 15:21
red red ...very red
1 回复
来自云南昆明的 Internet Explorer 11.0|Windows 10 用户 2015-12-21 10:43
1
来自江苏淮安的 Firefox 42.0|Fedora 用户 发表于 2015-12-19 21:38 的评论:
请问1.5 末尾的 ’&’ 是什么用处?

还有,1.1用locate filename.txt 是不是有什么不妥?find会很慢吧
2
巴斯光年 [Firefox 42.0|Windows 7] 发表于 2015-12-20 22:42 的评论:
1.5 是后台默默运行的意思?我猜的。。。
1.1 locate 需要先 updatedb 一下,而 updatedb 需要 root 权限。如果你在生产环境中没有 root 权限,就很有可能找不到文件。当然,我觉得 find / -name filename.txt 也不大可能找得到文件 :-P
&就是后台运行的意思,如果用find命令查找文件加上-type f会更快更准确
1 回复
巴斯光年 [Firefox 42.0|Windows 7] 2015-12-20 22:42
1
来自江苏淮安的 Firefox 42.0|Fedora 用户 发表于 2015-12-19 21:38 的评论:
请问1.5 末尾的 ’&’ 是什么用处?

还有,1.1用locate filename.txt 是不是有什么不妥?find会很慢吧
1.5 是后台默默运行的意思?我猜的。。。
1.1 locate 需要先 updatedb 一下,而 updatedb 需要 root 权限。如果你在生产环境中没有 root 权限,就很有可能找不到文件。当然,我觉得 find / -name filename.txt 也不大可能找得到文件 :-P
1 回复
来自江苏淮安的 Firefox 42.0|Fedora 用户 2015-12-19 21:57
lsof -i 4 列出ipv4连接的程序信息
之前用nethogs就为了看个程序名也真是不怕麻烦……
1 回复
来自江苏淮安的 Firefox 42.0|Fedora 用户 2015-12-19 21:38
请问1.5 末尾的 ’&’ 是什么用处?

还有,1.1用locate filename.txt 是不是有什么不妥?find会很慢吧
回复
yang.yusi [Firefox 43.0|Ubuntu] 2015-12-19 15:34
这些可谓是最基础的命令了
回复

热点评论

夜域诡士 [Firefox 38.0|GNU/Linux] 2015-12-24 15:21
red red ...very red
1
来自云南昆明的 Internet Explorer 11.0|Windows 10 用户 2015-12-21 10:43
&就是后台运行的意思,如果用find命令查找文件加上-type f会更快更准确
1
巴斯光年 [Firefox 42.0|Windows 7] 2015-12-20 22:42
1.5 是后台默默运行的意思?我猜的。。。
1.1 locate 需要先 updatedb 一下,而 updatedb 需要 root 权限。如果你在生产环境中没有 root 权限,就很有可能找不到文件。当然,我觉得 find / -name filename.txt 也不大可能找得到文件 :-P
1
来自江苏淮安的 Firefox 42.0|Fedora 用户 2015-12-19 21:57
lsof -i 4 列出ipv4连接的程序信息
之前用nethogs就为了看个程序名也真是不怕麻烦……
1
返回顶部

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”将网页分享至朋友圈。