java 工程师 linux常用命令

简介: 查找文件find / -name filename.text //跟根据名称查找 / 目录下的filename.txt文件find .-name ".xml" //递归查找所有.

查找文件

find / -name filename.text  //跟根据名称查找 / 目录下的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个连续小写字符的字符串的行。
AI 代码解读

查看一个程序是否运行

ps –ef|grep tomcat  //查看所有有关tomcat的进程
AI 代码解读

查看文件,包含隐藏文件

ls -al
AI 代码解读

当前工作目录

pwd
AI 代码解读

复制文件

cp sourceFolder targetFolder

scp sourecFile romoteUserName@remoteIp:remoteAddr //远程拷贝
AI 代码解读

创建目录

mkdir newfolder
AI 代码解读

删除目录

rmdir deleteEmptyFolder //删除空目录rm -rf deleteFile递归删除目录中所有内容
AI 代码解读

移动文件

mv /temp/movefile /targetFolder
AI 代码解读

重命名

mv oldNameFile newNameFile
AI 代码解读

切换用户

su username
AI 代码解读

修改文件权限

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

压缩文件

tar -czf test.tar.gz /test1 /test2   //压缩test1 test2
AI 代码解读

列出压缩文件列表

tar -tzf test.tar.gz
AI 代码解读

解压文件

tar -xvzf test.tar.gz
AI 代码解读

查看文件头10行

head -n 10 example.txt
AI 代码解读

查看文件尾10行

tail -n 10 example.txt
AI 代码解读

查看日志类型文件

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

./startup.sh && tail -f ../logs/catalina.out  //重启tomcat 输出日志
AI 代码解读

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

sudo rm a.txt //使用管理员身份删除文件
AI 代码解读

查看端口占用情况

netstat -tln | grep 8080 //查看端口8080的使用情况
AI 代码解读

查看端口属于哪个程序

lsof -i :8080
AI 代码解读

查看进程

ps aux|grep java //查看java进程
ps aux //查看所有进程
AI 代码解读

以树状图列出目录的内容

tree a
AI 代码解读

文件下载

wget http://file.tgz
//mac下安装wget命令
curl http://file.tgz
AI 代码解读

网络检测

ping www.taobao.com
AI 代码解读

远程登录

ssh userName@ip
AI 代码解读

打印信息

echo $JAVA_HOME //打印java home环境变量的值
AI 代码解读

java 常用命令

java javacjps , jstat , jmap , jstack
AI 代码解读

其他命令

svn git maven
AI 代码解读

grep命令作用

Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

ps命令参考文章

ps是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。总之大部分信息都是可以通过执行该命令得到的。
ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。

kill 命令用于杀死进程。
AI 代码解读

1.命令格式:

ps[参数]

2.命令功能:

用来显示当前进程的状态

3.命令参数:

a 显示所有进程
-a 显示同一终端下的所有程序
-A 显示所有进程
c 显示进程的真实名称
-N 反向选择
-e 等于“-A”
e 显示环境变量
f 显示程序间的关系
-H 显示树状结构
r 显示当前终端的进程
T 显示当前终端的所有程序
u 指定用户的所有进程
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
-C<命令> 列出指定命令的状况
–lines<行数> 每页显示的行数
–width<字符数> 每页显示的字符数
–help 显示帮助信息
–version 显示版本显示

实例

ps -A  //显示所有进程信息

ps -u root //显示指定用户信息

ps -ef //显示所有进程信息,连同命令行

ps -ef|grep ssh //ps 与grep 常用组合用法,查找特定进程

ps -l //将目前属于您自己这次登入的 PID 与相关信息列示出来

ps aux //列出目前所有的正在内存当中的程序

ps -axjf //列出类似程序树的程序显示

ps aux | egrep '(cron|syslog)' //找出与 cron 与 syslog 这两个服务有关的 PID 号码

AI 代码解读

chmod

linux chmod命令是在日常运维中比较常用的命令之一,对文件管理比较重要,如设置web目录时需设置特定的权限以保证服务器安全。
提示:在写完shell脚本后,我们一般需要给这脚本设置权限:chmod a+x shell.sh
对程序及目录直接给予chmod -R 777 file,这种最高级的权限,对服务器安全会造成很大的安全隐患,一般不建议这样设置在线上服务器上,可配置chown来设置web目录权限,如对用户上传图片的目录设置为web执行用户者的权限,对需要用程序操作的web中目录,也同样的设置:chown -R apache:apache web,其它只读的文件或目录,保持root权限即可,这样可以增加服务器安全性

 linux命令 : chmod
    使用权限 : 所有用户
    使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的文件调用权限分为三级 : 文件拥有者[属主]、属组、其他用户。利用 chmod 可以控制文件如何被他人所调用。
AI 代码解读

与chmod相关的命令:chown,umask,   参数 :   mode : 权限设定字串,格式如下 :
[ugoa…][[+-=][rwxX]…][,…],其中 u 表示该文件的拥有者[user], g
表示与该文件的拥有者属于组(group), o 表示其他用户[other], a 表示这三者皆是[all]。(常用)

+ 表示增加权限、(常用)
- 表示取消权限、(常用)
= 表示唯一设定权限。

r 表示有可读取的权限, w 表示有可写入的权限, x 表示有可执行的权限, X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

  -c : 若该文件权限确实已经更改,才显示其更改动作   -f : 若该文件权限无法被更改也不要显示错误讯息   -v :
显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更 (常用)
示例:给文件修改所有为所有人可读权限:
chmod ugo+r linuxyw.com

chmod a+r linuxyw.com
给文件修改所有为所有人可执行权限:
chmod a+x linuxyw.com
给文件修改所有为文件属主用户可执行权限:
chmod u+x linuxyw.com
把linuxyw目录下的文件设置为所有人可执行权限:
chmod -R a+x linuxyw/
把linuxyw目录下的文件全部设置为755权限:
chmod -R 755 linuxyw/
取消linux目录下的所有文件可写权限:
chmod -R a-w linuxyw/

实例

执行  ll

返回
drwxr-xr-x 2 root root 4096 Apr 29 14:50 linuxyw
-rw-r--r-- 1 root root   36 Apr 27 23:40 linuxyw.com
-rw-r--r-- 1 root root    0 Apr 29 14:46 www.linuxyw.com
ll的结果返回七列,分别表示如下含义:
第一栏  [文件属性]
第二栏  [文件数]
第三栏  [拥有者]
第四栏  [所有者群组]
第五栏  [大小]
第六栏  [建档日期]
第七栏  [档名]
我们设置文件的权限就是这是第一栏里的文件属性。

文件属性这块共有十个字段,如:drwxr-xr-x

我们把这10个列分成4块:[d] [rwx] [r-x] [r-x]
第一块:也就是第一列,用来表示这个文件的类型,有如下值:
       (1)[ d ]则是目录,我这里的是d,表示的是一个目录
       (2)[ - ]则是文件;
       (3)[ l ]则表示为连结档(link file);
       (4)[ b ]则表示为装置文件里面的可供储存的接口设备;
       (5)[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标。
第二块:第 24 列,表示文件拥有者的权限。
第三块:第57 列,表示拥有者同组人的权限。
第四块:第810列,表示是非拥有者组人的权限。
     这些权限均有[rwx] 三个参数表示,而且分别对应不同的位置。每块由3个列组成,每列对应一个值。 [ r ]代表可读、[ w ]代表可写、[ x ]代表可执行。
       举例: 如果拥有者只有只读的权限,那么第24列就是[r--],有读写的权限就是[rw-],有读写和执行的权利就是[rwx].
使用数字赋权的命令格式如下:
       chmod abc filename
其中的abc 分别代表3个数字,并且分别对应问个不同的属组。 即:
       数字a 对应 第24位,表示拥有者的权限。
       数字b 对应 第57位,表示同组用户的权限。
       数字c 对应第810位,表示其他组的权限。

       rwx 对应421. 那么只读的权限用4表示[r--],读写用6(4+2)表示[rw-],写加执行用7(4+2+1)表示[rwx]。 只读加执行用5(4+1)表示[r-x]。

示例:
       chmod 755 file1
       chmod 777 file1 <==> chmod a=rwx file 
       chmod 771 file  <==> chmod ug=rwx,o=x file 
AI 代码解读

chown

  chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。
 1.命令格式:

  chown [选项]... [所有者][:[组]] 文件...
AI 代码解读

  2.命令功能:

    通过chown改变文件的拥有者和群组。在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员

例子

 实例1:改变拥有者和群组
    命令:chown mail:mail log2012.log
 实例2:改变文件拥有者和群组
   命令:chown root: log2012.log
实例4:改变指定目录以及其子目录下的所有文件的拥有者和群组 
  命令:chown -R -v root:mail test6
AI 代码解读
目录
打赏
0
0
0
3
26
分享
相关文章
|
11天前
|
Linux系统之whereis命令的基本使用
Linux系统之whereis命令的基本使用
51 23
Linux系统之whereis命令的基本使用
java连接redis和基础操作命令
通过以上内容,您可以掌握在Java中连接Redis以及进行基础操作的基本方法,进而在实际项目中灵活应用。
84 30
|
1天前
|
Java中执行命令并使用指定配置文件的最佳实践
通过本文的介绍,您可以了解如何在Java中使用 `ProcessBuilder`执行系统命令,并通过指定配置文件、设置环境变量和重定向输入输出流来控制命令的行为。通过这些最佳实践,可以确保您的Java应用程序在执行系统命令时更加健壮和灵活。
11 4
Java工程师如何理解张量?
刚接触AI和PyTorch,理解“张量(Tensor)”是入门关键。张量可类比为Java中的多维数组,但更强大,尤其在AI领域支持GPU加速、自动求导等特性。它不仅能高效存储数据,还能进行复杂运算,是深度学习的核心数据结构。掌握张量的维度、数据类型及GPU加速特性,对学习PyTorch至关重要。
38 3
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
37 11
|
2月前
|
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
111 14
Linux 10 个“who”命令示例
|
2月前
|
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
222 20
|
2月前
|
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
146 8
|
3月前
|
Linux中第一次使用locate命令报错?????
在Linux CentOS7系统中,使用`locate`命令时出现“command not found”错误,原因是缺少`mlocate`包。解决方法是通过`yum install mlocate -y`或`apt-get install mlocate`安装该包,并执行`updatedb`更新数据库以解决后续的“can not stat”错误。
65 9