文档章节

Linux命令(基础)

Fedo
 Fedo
发布于 2016/07/14 16:09
字数 2104
阅读 16
收藏 1

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

基本命令

###关机

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

© 著作权归作者所有

上一篇: eclipse注释模板
下一篇: Mysql命令整理
Fedo
粉丝 2
博文 34
码字总数 15391
作品 0
长沙
高级程序员
私信 提问
加载中

评论(0)

Linux基础命令学习系列 | 博客目录索引

Linux基础准备篇 大话Linux的历史与发展历程 VMware虚拟机安装Centos 8系统的详细操作步骤(最全介绍) CentOS 8.x以桥接模式联网的网卡配置详解 CentOS 8 for Linux的根目录下各个目录的用途及...

王菜鸟
05/05
0
0
《Linux基础知识及命令》系列分享专栏

《Linux基础知识及命令》系列分享专栏 本专题详细为大家讲解了Linux入门基础知识,思路清晰,简单易懂。本专题非常适合刚刚学习Linux的小白来学习,通过学习该专题会让你由入门达到中级的水平...

kaixin_code
2018/12/01
126
0
要不要听听小白学习Linux经验小谈

Linux系统近几年发展的很快,特别是随着安卓手机的普及,大数据、物联网、人工智能等科学技术的发展,Linux系统从几年前只有白帽、黑帽等系统高手才了解的情况下变成如今几乎全民皆知的地步,...

问题终结者
2018/05/06
96
0
20199103《网络攻防实践》假期作业

20199103《网络攻防实践》假期作业 这个作业属于哪个课程: https://edu.cnblogs.com/campus/besti/19attackdefense 这个作业的要求在哪里: [https://edu.cnblogs.com/campus/besti/19atta...

osc_dkusfncz
02/03
3
0
聊聊我怎么系统学习Linux技能并快速提高的

聊聊我怎么系统学习Linux技能并快速提高的 随着电子信息科技时代的发展,学会使用计算机在我们的生活中成为了必不可少的一项技能。而作为计算机中的三大操作系统之一的Linux更是饱受计算机爱...

linuxCool
2018/11/18
29
0

没有更多内容

加载失败,请刷新页面

加载更多

垃圾收集器与内存分配策略

对象已死? 垃圾标记算法 1.引用计数算法 C++智能指针、Python 2.可达性分析算法 JavaGC Roots的根对象作为起始节点,通过引用链到某个对象不可达时,证明此对象不可能再被使用。 强引用:...

LoSingSang
昨天
27
0
Python--从集合中随机取出一个元素

Python--从集合中随机取出一个元素 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 说明 有时候有一个这样的需求...

归子莫
昨天
27
0
iptables-F 后 SSH 连接断开

最近回收利用一台被征用做邮件服务的服务器,重新部署新的业务。 清理了所有的安装软件和目录文件后,调整了网络安全组规则,仅开放所需端口。 看了下防火墙的配置: # iptables -LChain I...

DEPAKIN
昨天
27
0
IDEA通过Maven打包JavaFX工程(OpenJFX11)

1 概述 最近研究JFX,写出来了但是打包不了,这。。。尴尬。。。 IDEA的文档说只支持Java8打成jar包: 尝试过直接使用Maven插件的package,不行,也尝试过Build Artifacts,也不行,各种奇奇...

氷泠
昨天
19
0
《一天一模式》— 命令模式

一、命令模式的概念 将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 二、什么时候使用命令模式 调用者与实现者通常是一种紧耦合的...

XuePeng77
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部