Linux命令
文件操作命令
cd [filename] 例如 cd /
cd .. 返回上级目录
pwd 当前路径Print Working Directory
ls 列出当前目录所有文件list
mkdir 创建文件夹make directory
rmdir 删除文件夹
cp 复制
mv 移动
rm [options] [filename or directory]
options选择:
-f:强制删除(force),和 -i 选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录。
-i:和 -f 正好相反,在删除文件或目录之前,系统会给出提示信息,使用 -i 可以有效防止不小心删除有用的文件或目录。
-r:递归删除,主要用于删除目录,可删除指定目录及包含的所有内容,包括所有的子目录和文件。
对压缩包进行解压
tar [options] [Compressed filename]
options选择:
-c:将多个文件或目录进行打包;
-A:追加 tar 文件到归档文件;
-f 包名:指定包的文件名。包的扩展名是用来给管理员识别格式的,所以一定要正确指定扩展名;
-v:显示打包文件过程;
-x:对 tar 包做解打包操作;
-t:只查看 tar 包中有哪些文件或目录,不对 tar 包做解打包操作;
-C 目录:指定解打包位置;
-z:压缩和解压缩 ".tar.gz" 格式;
-j:压缩和解压缩 ".tar.bz2"格式。
如:对格式为.tar.gz的压缩包进行解压
tar -zxvf xxx.tar.gz
在命令行窗口运行jar包
java -jar [filename.jar]
注意:
①filename.jar是要运行的jar包名字,可以在jar包所在目录执行该命令,或者使用绝对路径执行该命令。
②此操作会锁定命令行窗口,一旦按ctrl+C取消锁定,该jar包便会停止运行,退出窗口也会停止运行。
使jar包在后台运行,并且退出窗口也能运行
nohup java -jar [filename.jar] &
参数解释:
①&命令表示jar包在后台运行,不锁定命令行窗口,但是退出终端时,jar包会停止运行。
②nohup命令表示不挂断运行命令,窗口退出时依然能运行。当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。
服务启动状态
systemctl命令是系统服务管理器指令,它综合了service和chkconfig这两个命令的功能。
常用的一些命令:
查看服务状态、启动、重启、停止、重载服务。
以mysql为例
systemctl status mysqld.service //查看服务状态
systemctl start mysqld.service //启动
systemctl restart mysqld.service //重启
systemctl stop mysqld.service //停止
systemctl reload mysqld.service //重载
设置服务开机自动启动、停止自动启动。
systemctl enable mysqld.service //自动启动
systemctl disable mysqld.service //停止自动启动
进程操作 ps
process status。
常用的一些命令:
- 查看所有的进程。
ps -aux
-aux表示显示所有包含其他使用者的进程
USER:启动该进程的用户帐号名称
PID:该进程在系统中的数字ID号,唯一的
%CPU:占用CPU的百分比
%MEM:占用内存空间的百分比
VSZ:占用虚拟内存(swap空间)的大小
RSS:占用物理内存的大小
TTY:表明该进程在那个终端上运行。
STAT:显示了进程当前的状态,S(休眠),R(运行),Z(僵死),< (高级先级),N(低优先级),S(父进程),+(前台进程)。对于僵死状态的进程应该基于手动终止。
START:启动该进程的时间。
TIME:启动该进程的时间
COMMAND:启动该进程的命令名称
详情参考:https://blog.csdn.net/ydydyq/article/details/52636136
- 查看具体的进程
ps -ef|grep [string]
参数解释:-ef显示所有的进程信息,grep是字符串匹配参数。在查询出的所有进程中匹配某个特定的进程,这是模糊查询。
kill 杀死进程
kill [options] [pid]
常用的一些options:
SIGHUP 1 终端断线
SIGINT 2 中断(同 Ctrl + C)
SIGQUIT 3 退出(同 Ctrl + \)
SIGTERM 15 终止
SIGKILL 9 强制终止
SIGCONT 18 继续(与STOP相反, fg/bg命令)
SIGSTOP 19 暂停(同 Ctrl + Z)
注意:
①SIGKILL(9)和SIGSTOP(19)信号不能被捕捉、封锁或者忽略。若有一个pid为11472的进程,该进程占用了8080端口号,使用kill 11472杀死该进程时,该进程可能会忽略掉这个操作,导致8080端口一直被占用,那么此时就可以使用kill -9 11472彻底杀死该进程,释放掉8080端口号。可以使用kill -l来查看各类参数信号。
②当然kill -9 [pid]也不能乱用,有时可能会带来严重的后果,比如对于转账功能来说,账号A将给账户B转一笔钱,账号A进行扣钱操作,账号B进行加钱操作,但是此时执行了kill - 9 [pid]命令,导致进程被立即杀死,相当于断电了,若使用的是innoDB引擎,则没有什么损失,因为它支持事务,但是对于MyISAM引擎那就是灾难,会导致账户A进行了扣钱操作,但是账户B没有进行加钱操作。
解决办法:
采用优雅的方式结束进程,比如:使用kill -15 [pid]命令、使用shutdown.bat/shutdown.sh命令关闭
tomcat服务器等,优雅的方式:第一步,停止接收请求和内部线程。第二步,判断是否有线程正在执行。
第三步,等待正在执行的线程执行完毕。第四步,停止容器。
详情请看:https://blog.csdn.net/qq_33220089/article/details/105708331
查看端口使用情况
netstat命令用于显示与IP、TCP、UDP、ICMP相关的一些数据,通常用来查看端口使用情况。
netstat [options]
options选择:
-a:查看所有连接
-c:持续列出网络状态
-e:显示网络其他相关信息
-g:显示多重广播功能群组组员名单。
-i:显示网络界面信息表单
-l:显示监控中的服务器的SOCKET
-n:直接打印连接的IP地址与端口信息
-p:显示正在使用SOCKET的程序识别码和程序名称
-r:显示路由信息
-s:显示网络工作信息统计表
-t:显示TCP传输协议的连线状况
-u:显示UDP传输协议的连线状况
-v:显示指令执行过程
-w:显示RAW传输协议的连线状况
-F:显示FIB
-C:显示路由器配置的快取信息
-A:列出该网络类型连线中的相关地址
-N:显示网络硬件外围设备的符号连接名称
-M:显示伪装的网络连线
详情请看:https://blog.csdn.net/xungen/article/details/91125686
常用命令:
查看TCP连接的监听地址、端口以及进程等信息。
netstat -tlnp
Linux磁盘管理常用三个命令为df、du和fdisk。
- df:列出文件系统的整体磁盘使用量
- du:检查磁盘空间使用量
- fdisk:用于磁盘分区
Linux包管理器
rpm包管理器
yum