您的位置:首页 > 运维架构 > Linux

Linux命令(基础)

2016-07-14 00:00 549 查看
摘要: 使用centos/redhat 实用命令整理

基本命令

###关机

poweroff
shutdown -h now

reboot
shutdown -r now #重启

查看当前目录占用磁盘空间大小

du -sh

#        -h:以人类可读的方式显示
#  -a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小
#  -s:显示目录占用的磁盘空间大小,不要显示其下子目录和文件占用的磁盘空间大小
#  -c:显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和
#  --apparent-size:显示目录或文件自身的大小
#  -l :统计硬链接占用磁盘空间的大小
#  -L:统计符号链接所指向的文件占用的磁盘空间大小

##环境变量

显示所有环境变量
env

查看环境变量
echo $JAVA_HOME

创建环境变量
export JAVA_HOME="/opt/jdk1.7"
export path=$path:$JAVA_HOME:/path1:/path2:/pahtN

删除环境变量
unset $JAVA_HOME

将环境变量设为只读
readonly JAVA_HOME

##日志

查看日志
cat /var/log/*.log

实时查看
tail -f /var/log/messages

定时查看更新部分
watch -d -n 1 cat /var/log/messages

-d表示高亮不同的地方,-n表示多少秒刷新一次。

##进程

确定要杀死进程的PID或PPID
ps -ef | grep httpd

确定要占用端口的PID或PPID
lsof -i:8080

以优雅的方式结束进程
(-l选项告诉kill命令用好像启动进程的用户已注销的方式结束进程。当使用该选项时,kill命令也试图杀死所留下的子进程。但这个命令也不是总能成功--或许仍然需要先手工杀死子进程,然后再杀死父进程。 )

kill -l PID

结束占用端口的相关进程
kill -9 $(lsof -i:80|tail -1|awk '"$1"!=""{print $2}')//$用户获取命令的执行结果

shell脚本

#!/bin/bash
name=$(lsof -i:80|tail -1|awk '"$1"!=""{print $2}')
if [ -z $name ]
then
echo "No process can be used to killed!"
exit 0
fi
id=$(lsof -i:80|tail -1|awk '"$1"!=""{print $2}')
kill -9 $id

echo "Process name=$name($id) kill!"
exit 0

shutdownport.sh

#!/bin/bash
while true
do
echo -n "please enter the port:"
read myport
name=$(lsof -i:$myport|tail -1|awk '"$1"!=""{print $2}')

if [ -z $name ];then
echo "No process can be used to kill"
exit 0
else
kill -9 $name
echo "Process name=$myport($name) kill!"
fi
done

TERM信号
给父进程发送一个TERM信号,试图杀死它和它的子进程。

kill -TERM PPID

killall命令
killall命令杀死同一进程组内的所有进程。其允许指定要终止的进程的名称,而非PID。

killall httpd

##切换用户
su - tomcat 从root切换到tomcat用户
su - 切换回root

##压缩解压

unzip xxx.zip

1、把/home目录下面的mydata目录压缩为mydata.zip

zip -r mydata.zip mydata #压缩mydata目录

2、把/home目录下面的mydata.zip解压到mydatabak目录里面

unzip mydata.zip -d mydatabak

3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip

zip -r abc123.zip abc 123.txt

4、把/home目录下面的wwwroot.zip直接解压到/home目录里面

unzip wwwroot.zip

5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面

unzip abc\*.zip

6、查看把/home目录下面的wwwroot.zip里面的内容

unzip -v wwwroot.zip

7、验证/home目录下面的wwwroot.zip是否完整

unzip -t wwwroot.zip

8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录

unzip -j wwwroot.zip

主要参数

-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID

查看linux版本信息

查看发行版

[fedo@xxx ~]$ cat /etc/issue
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Kernel \r on an \m

查看内核版本

[fedo@xxx ~]$ cat /proc/version
Linux version 2.6.32-279.el6.x86_64 (mockbuild@x86-008.build.bos.redhat.com) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Wed Jun 13 18:24:36 EDT 2012

linux下利用nohup后台运行jar文件包程序

Linux 运行jar包命令如下:

方式一:

java -jar XXX.jar

特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出

那如何让窗口不锁定?

方式二

java -jar XXX.jar &

&代表在后台运行。

特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。

继续改进,如何让窗口关闭时,程序仍然运行?

方式三

nohup java -jar XXX.jar &

nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行

当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。

方式四

1.nohup java -jar XXX.jar >temp.txt &

解释下 >temp.txt

command >out.file

command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。

可通过jobs命令查看后台运行任务

jobs

那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。

fg 23

查看某端口占用的线程的pid

netstat -nlp |grep :9181

网络命令

####查看ip信息

ifconfig

ping同windows

CentOS Minimal 环境配置

virtualbox 使用桥接(即跟宿主计算机处于平级 同一ip段 方便互访 xshell)

tar -xzvf xxx.tar.gz  #解压到当前目录

###RPM命令

(一)查询系统装已经安装的软件信息

1)查询系统中已经安装的软件

rpm -qa

2)查询一个已经安装的文件属于哪个软件包;

rpm -qf 文件名的绝对路径

3)查询已安装软件包都安装到何处;

软件名定义是:rpm包去除平台信息和后缀后的信息

rpm -ql 软件名

4)查询一个已安装软件包的信息

rpm  -qi 软件名

5)查看一下已安装软件的配置文件;

rpm -qc 软件名

6)查看一个已经安装软件的文档安装位置:

rpm -qd 软件名

7)查看一下已安装软件所依赖的软件包及文件;

rpm -qR 软件名

(二)对于未安装的软件包信息查询

1)查看一个软件包的用途、版本等信息;

rpm -qpi rpm文件

2)查看一件软件包所包含的文件;

rpm -qpl rpm文件

3)查看软件包的文档所在的位置;

rpm -qpd rpm文件

4)查看一个软件包的配置文件;

rpm -qpc rpm文件

5)查看一个软件包的依赖关系

rpm -qpR rpm文件

####(三)软件包的安装、升级、删除等

1)安装或者升级一个rpm包

rpm -ivh rpm文件【安装】 rpm -Uvh rpm文件【更新】

2)删除一个rpm 包

rpm -e 软件名

如何需要不管依赖问题,强制删除软件,在如上命令其后加上 --nodeps

(四)签名导入

rpm --import 签名文件  rpm --import RPM-GPG-KEY

网络

####修改ip

ifconfig eth0 192.168.1.201 netmask 255.255.255.0

vi /etc/resolv.conf

nameserver 8.8.4.4

重启网络服务

service network restart

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux