我们的服务一般都是在linux系统运行,因此了解一些关于linux命令是必须。接下来将一一详细介绍一些常用的linux的命令
- 文件操作
- 远程登录与操作
- 磁盘挂载
- 进程管理 启动和结束
- 系统性能参数查看
- 网络数据抓取
- shell 脚本命令
- jvm 常用命令
1 文件操作命令
find
- find 用于在指定目录下查找文件或子目录,如果不指定查找目录,则在当前目录下查找
- 命令格式:
·find path -option [-print] [ -exec/-ok command {} \ ]
;
○ 「print」:将匹配的文件输出到标准输出
○ 「exec」:对匹配的文件作为参数 让 command 命令执行。{} 是匹配文件的占位符
○ 「ok」: 和 exec 的作用相同,但在执行命令之前,会给出提示,让用户来确定是否执行
touch 和 vim
- 「touch」 可用于创建一个空文件,如果文件存在,则会更改文件的访问时间和修改时间
- touch 示例
- 「vim」 Vim是从 vi 发展出来的一个文本编辑器,是在 linux 系统交互界面进行文件查看,编写文本的首选工具

- vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)
less、cat、more、tail 和 head
- 「less」 是linux 必不可少的查看文件工具,功能极其强大
- less 文件后可进行的动作操作和 vim 在命令模式下的操作相似;less在查看文本时的常用动作命令如下
- 「more」 常用于显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比。命令格式:
more 文件
,more 常用操作指令如下
- 「cat」 常用于连接文件并打印到标准输出设备上,也可用于查看文件。格式:
cat fileName [| command ]
,command 默认是 echo,cat会一次性显示整个文件的内容,不分页 - 「head」 是显示一个文件的内容的前多少行;常用命令格式:
head -n 行数值 文件名
- 「tail」 是显示一个文件的内容的后多少行;常用命令格式:
tail -n 行数值 文件名
grep、zgrep
- grep 一般用于在文件中查和匹配模式匹配的每一行数据。命令格式
grep [options] 'pattern' [files]
;grep 支持处理管道的输出数据;pattern 支持正则表达式;files 可以是多个文件,用空格分开 - grep 无法在压缩文件匹配查找数,此时可以用 zgrep,zgrep 适用处理压缩后的gz等格式文件
cp
- 文件目录复制可用使用 cp 命令。cp 格式:
cp [选项参数] fileSource... fileTarget
mv
- mv 可用来移动文件夹、文件 或者 修改文件名、目录名
rm
- rm 命令用于删除一个文件或者目录;命令格式
rm [options] fileName/filePath
mdkir
- mdkir命令用于创建目录,
mkdir [-p] dirName
;-p 确保目录名称存在,不存在的就建一个
tar 和 jar
- tar 的命令格式:
tar [-option] fileName/filePath
;tar具有打包和压缩功能,普通文件和文件夹可以被打包成 xxx.tar,如果要压缩,则是在打包之后再压缩,格式是 xxx.tar.gz
- jar 的命令格式:
jar {c t x u f }[ v m e 0 M i ][-C 目录] fileName
;其中{ ctxu }这四个选项必须选其一。[ v f m e 0 M i ]是可选选项,文件名是必须的
chmod
- chmod 是控制用户对文件的权限的命令, 命令格式:
chmod [-cfvR] mode file

ln
- 命令格式:
ln [options] [源文件或目录] [目标文件或目录]
;当我们需要在不同的目录,用到相同的文件时,又不想浪费空间复制相同的文件,可以用ln 链接它,相当创建一个快捷图标
- 软链接:以路径的形式存在。类似于Windows操作系统中的快捷方式;可以对一个不存在的文件名进行链接;可以对目录进行链接;软链接可以 跨文件系统 ,硬链接不可以
- 硬链接:以文件副本的形式存在。但不占用实际空间;不允许给目录创建硬链接;硬链接只有在同一个文件系统中才能创建
- ln 示例
2 远程登录与操作
ssh
- linux下的ssh服务是一个守护进程(demon),ssh 服务端的进程名为 sshd ,负责实时监听客户端的请求(默认22端口),包括公共秘钥等交换等信息。ssh的客户端可以用 xShell,Securecrt, Mobaxterm等工具进行连接,也可以在 linux 命令窗口使用 ssh 命令连接 ssh 服务端
- 命令格式:
ssh [-p port] user@remoteIp
或者ssh [-p port] user@remoteIp shellCommand
; 会提示输入密码 - ssh示例
sftp
- 登录sftp服务器
sftp -oPort=23 user@remoteIp
scp
- 如果是涉及不同linux系统间的文件复制则用 scp, 格式:
scp [options] fileSource fileTarget
文件同步 rsync
- 与其他文件传输工具(如 FTP 或 scp)不同,和 scp 功能类似。rsync 的最大特点是会检查发送方和接收方已有的文件
linux与客户端的上传下载命令:rz、sz
- 用 ssh 管理 linux 服务器时经常需要远程与 win 本地之间交互文件。直接用SecureCRT自带的上传下载功能无疑是最方便的。上传:rz、下载:sz
- 在 window 上使用SecureCRT、XShell 软件,用 rz、sz 进行上传下载
3 磁盘挂载
df
- df 用于查看磁盘空间占用情况:
df [-options] [file]
mount
- mount 命令是经常会使用到的命令,它用于挂载Linux系统外的文件
4 进程管理 启动和结束
systemctl 和 service
- 「service」 命令本身是一个shell脚本,它会在 /etc/init.d/ 目录查找指定的服务脚本,然后调用该服务脚本来完成任务;service命令用于对系统服务进行管理,比如启动(start)、停止(stop)、重启(restart)、查看状态(status)等。命令格式:
service 服务名 [start|stop|restart|reload|status]
- 「systemctl」 命令兼容了 service 命令,且包含其他更强大功能
- systemctl 用来管理 linux系统的多种资源:系统服务、硬件设备、挂载点、socket等;下面则主要介绍关于 service 系统服务的相关命令使用。因为 systemctl 一般用于实现服务自启动的脚本
- xxx.service 文件的详细配置介绍请上网自行查看,下面给个简单的模板介绍
nohup 和 &
- nohup 和 & 组合可以不挂断地在后台运行进程,命令格式:
nohup command [agrs..] [&]
。& 表示程序可以在linux 后台运行,在当前 shell 界面ctrl C
退出,该程序也能继续运行,它可以忽略 SIGINT 信号,不过它会随着 shell 程序的关闭而停止,这是因为 & 运行的进程对 SIGHUP 信号不免疫 - 加上 nohup 就可以做到忽略SIGHUP信号
kill
- 如果在linux遇到需要杀死或停止某进程,可以使用 kill, 示例:
# kill -9 1211
。kill 也不单单用于停止进程,可用kill [-s <指定信号>][程序]
发送指定信号给指定程序,而# kill -l
可列出全部的信号名称。
文章转载自公众号:潜行前行