Linux常用命令汇总(Centos7)

  • 1、关于Mysql数据库常用命令:

#开启mysql服务
service mysql start
 
#关闭mysql服务
service mysql stop
 
#启动mysql数据库
mysql -u root -p(回车后输入前面的随机密码)
 
#设置mysql可以远程连接
create user 'root'@'%' identified by '数据库密码';
grant all on *.* to 'root'@'%';
flush privileges;
 
#查看当前防火墙的状态
firewall-cmd --state
 
#查看当前防火墙开放的端口
firewall-cmd --list-ports
 
#开放3306端口
firewall-cmd --permanent --add-port=3306/tcp
 
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
 
#设置mysql开机自启
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

2、关于tomcat部署软件常用命令

       我的软件是使打成了war包,然后放在了tomcat的webapps下面,由于当时开发是在windows下进行的,配置的log输出路径一般都是在D盘的xx路径下,这次部署在Linux的tomcat下,找不到了日志的输出位置,我在tomcat的logs里面找了半天也没有我软件的启动日志,发现原来需要其他的方式来显示出来,如下所示:

#首先切换到tomcat的logs文件夹下,下面的两个操作都在这个目录下进行
cd tomcat/logs/
 
#如果想要查看实时日志,可以输入下面的命令
tail -f catalina.out
 
#如果想要查看全部日志,可以输入下面的命令
vim catalina.out
 
#如果想要退出tail,可以输入下面的命令
ctrl+c
 
#启动tomcat服务的命令,进入到tomcat的bin目录下,输入
./startup.sh
 
#如果想要关闭tomcat的服务,进入到tomcat的bin目录下,输入
./shutdown.sh

3、关于端口号占用问题

  有时候会出现服务虽然关掉了,但是端口号还是被占用的问题;还有时候会出现服务端口占用的问题

#查看端口,输入下面的命令会显示所有占用的端口
netstat -anp
 
#查看端口对应的应用程序
lsof -i:端口号
 
#关闭端口,其中PID为进程号,当你输入上面的命令时就会显示出当前端口号所属的PID是多少
kill -9 PID

4、常用文件操作命令

#普通用户和root用户之前切换,
su -
 
#编辑文件命令,然后输入i即可编辑文件的内容
vim -文件名
vi -文件名
 
#编辑完成之后,按ESC命令跳转到命令模式
:w 保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w!   强制保存,不推出vi
:wq  保存文件并退出vi
:wq! 强制保存文件,并退出vi
:q  不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑
 
#删除文件
rm -文件名
 
#删除空的文件夹
rmdir 文件夹名
 
#文件移动
mv 原文件地址 新地址
 
#文件复制
cp 原文件地址 新地址
 
#显示当前路径
pwd
 
#创建一个新的目录
mkdir 文件夹名
 
#判断Linux系统是32位还是64位
getconf LONG_BIT

5、Linux树型目录结构

  在详解常用命令之前,先对Linux的树型目录结构做个简单的了解,如下所示:

简单说明:

# /      #根目录
# /bin   #基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, cd等等。这个目录中的文件都是可执行的,一般的用户都可以使用。
# /dev   #设备文件,比如声卡、磁盘、鼠标、键盘等。
# /etc  #系统管理和配置文件
# /etc/init.d   #启动配置文件和脚本,可在这里添加启动脚本。
# /etc/rc.local   #用户添加启动项
# /home  #用户主目录,比如用户user的主目录就是/home/user,可以用~user表示
# /lib   #标准程序设计库存放路径,又叫动态链接共享库,作用类似windows里的.dll文件
# /sbin  #超级管理命令,这里存放的是系统管理员使用的管理程序。
# /tmp   #临时文件目录,有时用户运行程序的时候,会产生临时文件。 /tmp就用来存放临时文件的。
# /root  #系统管理员的主目录
# /mnt   #用来临时挂载其他的文件系统
# /lost+found   #这个目录平时是空的,系统意外崩溃或机器意外关机,而产生一些文件碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的文件系统。
# /media      #即插即用型存储设备的挂载点自动在这个目录下创建,比如USB盘系统自动挂载后,会在这个目录下产生一个目录 
# /proc  #虚拟文件目录,可直接访问这个目录来获取系统信息。
# /var   #所有服务的登录文件或错误讯息档案(log files)都在 /var/log 里面
# /boot  #包含Linux内核及系统引导程序所需要的文件,比如 vmlinuz initrd.img 文件都位于这个目录中。在一 般情况下,GRUB或LILO系统引导管理器也位于这个目录;
# /usr   #最庞大的目录,要用到的应用程序和文件几乎都在这个目录,其中包含:
1  usr/bin     #众多的应用程序
2  /usr/sbin     #超级用户的一些管理程序
3  /usr/include  #Linux下开发和编译应用程序所需要的头文件
4  /usr/lib     #常用的动态链接库
5  /usr/share/man  #帮助文档
6  /usr/src     #源代码,Linux内核的源代码就放在/usr/src/Linux里
7  /usr/local/bin  #本地增加的命令
8  /usr/local/lib  #本地增加的库根文件系统

 

. :代表当前路径

.. :代表上一级目录

~ :代表用户目录路径

 

6、常用命令详解

6.1 ls 命令

  ls是英文单词list的缩写.用来查看文件目录的属性。

  • 例如直接输入ls按回车,查看根目录的文件以及目录。

  

6.1.1 ls -l命令

  • ls -­l  l参数代表以列表的方式显示。

  

  • # 第一个字符d 代表这是一个目录文件。
  • # ‐  代表普通文件
  • # c  字符设备文件
  • # b  块设备文件
  • # p  管道文件
  • # l  链接文件
  • # s  socket文件
  • #后面的rwxr‐xr‐x字符,代表user、group、other对文件所拥有的权限,rwx代表该用户拥有读写执行的权限。r‐x代表同一组的用户拥有的读和执行权限,后一个r‐x代表其他用户拥有读和执行权限。
  • # 2代表文件硬链接的计数,表示该文件有两个硬链接。
  • # where文件所属的用户名。
  • # where文件所属的用户组。
  • # 4096 文件大小,单位字节。
  • # 6月 25 16:53  文件最后被修改的日期。
  • # Videos 文件名

6.1.2 ls -a命令

  • ls -a ­a参数代表all的意思,表示把所有的文件都罗列出来,包括隐藏文件,点号开头的在Linux中都表示隐藏文件。

  

 

 

    ls ‐ld [filename] 代表只列出目录文件的属性。

6.2 stat命令 

  查看文件的访问时间,修改时间等

  

访问时间,是指通过指令如cat、vi等来查看的文件的最近一次时间。
更改时间,是指修改文件内容的最近一次时间。 改动时间,是指修改文件属性的最近一次时间。 注意:访问时间是内容更改后,第一次访问的时间,后面再次访问的时候访问时间不会改变

 

6.3 cd命令

  cd是change directory的缩写,表示改变当前所在路径。

  

 

 

6.4 pwd命令

  pwd 是英文print working directory 显示当前所在路径。

  

6.5 which命令

  寻找可执行文件 ,并在PATH环境变量里面寻找

  

6.6 touch命令 

  将每个文件的访问及修改时间都更新为目前的时间。如果文件不存在,则创建一个字节数为0的文件。

‐a           #只更新访问时间,不改变修改时间
‐c           #不创建不存在的文件
‐m           #只更新修改时间,不改变访问时间
‐r file      #使用文件file的时间更新文件的时间
‐t           #将时间修改为参数指定的日期,如:07081556代表7月8号15点56分

 

  

6.7 mkdir 命令

  mkdir 是make directory的英文缩写。创建目录DIRECTORY,可以一次创建多个。OPTION如果是­p,表示可以连同父目录一起创建。

  

6.8 rmdir 命令 

  rmdir是remove directory的英文缩写。

  

 

 

   删除空目录,可以一次删除多个。OPTION如果是­p,表示可以连同空的父目录一起删除。但是一旦父目录中还包含其他文件,则删除失败。

6.9 rm 命令 

rm是remove的英文缩写。

可以用来删除普通文件,也可以用来删除目录,特别用来删除目录中嵌套有子目录的目录文件。
常用参数:
‐f  ‐‐force  #强制删除,不询问是否要删除。
‐r  ‐‐recursive  #递归删除,包括文件夹中的内容。

 

6.10 mv命令

mv是英文单词move的缩写。可以用来移动文件夹或者文件,也可以用来更改文件名。

mv file / #把文件file移动到根目录中
mv file file_bak #把文件file重命名为file_bak。

 

6.11 cp命令

cp是英文单词copy的缩写,表示拷贝文件。

可以用来拷贝普通文件:cp file file_bak #拷贝一份file为file_bak
可以用来拷贝目录:cp dir dir_bak ‐r #拷贝一个目录dir为dir_bak, ‐r参数代表递归拷贝,把dir目录中的文件也拷贝过去

 

6.12 cat命令

cat英文单词concatenate连锁的缩写,用来查看文件内容,以及将几个文件连成一个文件,

  • 不填文件参数,默认的情况下是从标准输入中获取内容: 

  • 查看文件: cat fileName

  • 将文件file1 file2连成file3文件
cat file1 file2 > file3

 

6.13 more命令 

more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,并且提示文件的百分比。

参数如下

+num    #从第num行开始显示;
‐num    #定义每屏显示num行;

打开之后的动作:

6.14 less命令

less工具也是对文件或其它输出进行分页显示的工具

参数如下:

‐f    #强制打开文件,二进制文件显示时,不提示警告;
‐N    #在每行前输出行号;

打开之后的动作:

6.15 locate 命令 

全盘寻找文件,文件名部分匹配,只要有包含该字符串的都罗列出来,这个指令查找速度很快,它需要一个数据库,这个数据库由每天的例行工作(crontab)程序来更新。当我们建立好这个数据库后,就可以方便地来搜寻所需文件了。马上创建的文件没办法使用locate查找到:如果想马上更新可以使用一下指令:updatedb

6.16 find 命令

直接在全文件系统上搜寻,功能强大,速度慢。

格式:

find [path] [‐option] [ ‐print ‐exec ‐ok command ] {} \;

path:   #要执行查找的目录。
‐option: #查找的具体方法。
‐print: #find命令将匹配的文件输出到标准输出。
‐exec:  #find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' {} \;,注意{}和\;之间的空格。
‐ok:    #和‐exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

 

find / ‐name filename   #在根目录里面搜索文件名为filename的文件
find /etc ‐name *s*     #在目录里面搜索带有s的文件
find /etc ‐name *S      #在目录里面搜索以s结尾的文件
find /etc ‐name s*      #在目录里面搜索以s开头的文件
find / ‐amin ‐10        #在系统中搜索最后10分钟访问的文件
find / ‐atime ‐2        #查找在系统中最后48小时访问的文件
find / ‐mmin ‐5         #查找在系统中最后5分钟修改过的文件
find / ‐mtime ‐1        #查找在系统中最后24小时修改过的文件
find / ‐ctime ‐1        #查找在系统中最后24小时被改变状态的文件
find / ‐user username   #查找在系统中属于用户username的文件
find / ‐group groupname  #groupname 查找在系统中属于groupname的文件
find / ‐empty           #查找在系统中为空的文件或者是文件夹
find / ‐inum 3          #查找inode号为3的文件
find / ‐type d          #查找为文件类型为文件夹的文件d为文件夹
                                f     #普通文件
                                d     #目录文件
                                l     #链接文件
                                b     #块设备文件
                                c     #字符设备文件
                                p     #管道文件
                                s     #socket文件

6.17 grep 命令

搜索内容中是否包含指定的字符串,并打印出该行。

常用参数有:

‐i    ‐‐ignore‐case   #忽略字符大小写的差别。
‐v                    #输出没有指定字符串的文件
‐c                    #只输出匹配行的计数。
‐R                    #连同子目录中所有文件一起查找。

 

6.18 ln命令

ln是英文单词link的缩写,用来创建链接的命令。
   Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。
【硬链接】
   硬链接指通过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点,一般这种链接就是硬链接。

   硬链接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接到重要文件,以防止“误删”。
   如果有多个硬链接,只删除一个链接并不影响本身和其它的链接,只有当最后一个链接被删除后,文件的才会被正在删除。也就是说,文件真正删除的条件是与之相关的所有硬链接文件均被删除。
【软链接】
   另外一种链接称之为符号链接(Symbolic Link),也叫软链接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。符号链接文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

  • 给flie文件创建一个硬链接
    touch file
    ln file file_hard
  • 给file文件创建一个软链接
    touch file
    ln ‐s file flie_soft

    注意: 软链接的时候尽量使用绝对路径,避免由于链接文件移动后,造成文件失效。

6.19 wc 命令

Linux系统中的wc为英文Word Count的缩写,命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。 

  • 命令功能:

统计指定文件中的字节数、字数、行数,并将统计结果显示输出。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。

  • 命令参数:
‐c #统计字节数。 
‐l #统计行数。 
‐m #统计字符数。这个标志不能与 ‐c 标志一起使用。 
‐w #统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。 
‐L #打印最长行的长度。 

6.20 od命令 

od是英文octal dump的缩写,功能是把文件用8进制或者其他的格式显示出来,通常用于查看特殊格式文件的内容,可以用来查看不可见字符。

6.21 du命令

du是英文Disk usage的缩写,表示计算某个目录在硬盘中所占的空间大小,默认情况下以kb为单位。通过递归统计每一个目录中所占用的空间大小。

常用参数如下:

6.22 df命令

df是英文Disk free的缩写,用来统计磁盘的使用情况。

6.23 gedit命令 

gedit全称 GNU edit 是一个文本编辑器,类似windows里面的txt文本编辑器。编辑file文本。

6.24 管道命令

用法: command 1 | command 2 他的功能是把第一个命令command 1执行的结果作为command 2的输入。管道命令操作符是:”|”它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力.

6.25 重定向 

在shell中,标准输入是0,标准输出是1,标准错误是2。使用>表示重定向。1>表示标准输出重定向,2>表示标准错误重定向。默认情况下>表示输出重定向。

例如:

ls > list.txt   #ls的输出重定向到文件list.txt中。                     
find / ‐name "*.c" 2>/dev/null  #标准错误重定向到无底洞文件。     
find / ‐name "*.c" 2>/dev/null  #标准错误重定向到无底洞文件。     
find / ‐name "*.c" >/dev/null 2>&1  #标准输出、标准错误重定向到无底洞文件。

 

6.26 后台运行

Linux中可以使用&,让程序在后台运行。如:cat &

6.27 awk命令

awk就是把文件逐行的读入,以空格为默认分隔符将每行切开,切开的部分再进行各种分析处理。

格式:awk [‐F field‐separator] 'commands' [input‐file(s)]

其中,commands 是真正awk命令,[­F 域分隔符]是可选的。 input­file(s) 是待处理的文件。print 是awk打印指定内容的主要命令, $1 分割出来的第一段,$2分割出来的第二段,依次类推,$0代表所有字段。
例如:

ls ‐l | awk '{print $1 "\t" $2 "\t" $3 "\t" $4}'

将/proc/meminfo文件中的字段提取出来,并且在每个字段前面添加meminfo:

awk ‐F ':' '{print "meminfo:" $1}' /proc/meminfo
posted @ 2020-12-29 10:09  许宝  阅读(709)  评论(0编辑  收藏  举报