Linux常用命令整理

Linux常用命令整理

1 . cd(切换工作路径)
2 . ll/ls(打印目录文件)
3 . mkdir命令(创建空白的目录)
4 . 在目录下导入文件
5 . Linux文件传输(scp命令)
6 . bat文件和.sh文件,运行 .sh可执行文件
7 . 解压缩包
8 . 查看日志(tail -f +目录/文件名 命令)
9 . 编辑修改并保存文件(vi/vim) 8
10 . 查看端口占用情况(netstat命令) 11
11 . 查看文件内容 12
12 . 移动文件或重命名(mv)
13 . 删除文件夹和文件的命令(rm -rf xx)
14 . chmod命令详解(修改文件权限)
15 . pwd命令(查看当前目录路径)
16 . touch命令(创建文件)
17 . Tomcat的常用操作
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

1 . cd(切换工作路径)命令

cd命令用于切换工作路径,格式为“cd [目录名称]”。
这个命令应该是最常用的一个Linux命令了。可以通过cd命令迅速、灵活地切换到不同的工作目录。除了常见的切换目录方式,还可以使用“cd -”命令返回到上一次所处的目录,使用“cd …”命令进入上级目录,以及使用“cd ~”命令切换到当前用户的家目录,亦或使用“cd ~username”切换到其他用户的家目录。例如,可以使用“cd 路径”的方式切换进/etc目录中:

[root@linuxprobe ~]# cd /etc

同样的道理,可使用下述命令切换到/bin目录中:

[root@linuxprobe etc]# cd /bin

此时,要返回到上一次的目录(即/etc目录),可执行如下命令:

[root@linuxprobe bin]# cd -/etc
/etc
[root@linuxprobe etc]#


如果在已经进入到了一个目录下,想要继续打开这个目录下的文件夹(zym),可:
[root@linuxprobe etc]# cd zym/

[root@linuxprobe zym]

‘/’ 代表根目录

还可以通过下面的命令快速切换到用户的家目录:

[root@linuxprobe etc]# cd ~
[root@linuxprobe ~]#

2 . ll/ls(打印目录文件)命令

ll/ls命令用于显示目录中的文件信息,格式为“ls [选项] [文件] ”。
ll为竖排显示,ls为横排显示

直接输入ll可显示目录下的文件信息:

[root@vm02 ~]# cd /home/

[root@vm02 home]# ll

总用量 34556
drwxr-xr-x 17 root root 4096 10月 23 11:49 aa
drwx------ 7 cttapp cttapp 4096 4月 1 2017 bb
drwxr-xr-x 4 root root 4096 5月 16 2016 cc
drwxrwxrwx 5 test test 4096 12月 1 2016 dd
-rw-r–r-- 1 root root 35326629 7月 1 2017 isp-circuit-adapter-1.0.0.0.zip
drwx------ 2 root root 16384 4月 22 2016 lost+found
drwxr-xr-x 7 mysql mysql 4096 4月 20 2017 mysql
drwxr-xr-x 6 mysql mysql 4096 9月 18 17:43 mysql-5.6.26
drwxr-xr-x 5 root root 4096 5月 28 15:22 ods
drwxrwxrwx 4 777 root 4096 5月 3 2017 sztest
drwx------ 4 zabbix zabbix 4096 12月 12 2017 zabbix
drwxr-xr-x 7 root root 4096 10月 21 02:10 zym

3 . mkdir命令(创建空白的目录)

mkdir命令用于创建空白的目录,格式为“mkdir [选项] 目录”。
在Linux系统中,文件夹是最常见的文件类型之一。除了能创建单个空白目录外,mkdir命令还可以结合-p参数来递归创建出具有嵌套叠层关系的文件目录。

[root@linuxprobe ~]# mkdir linuxprobe  创建内嵌文件夹或文件夹
[root@linuxprobe ~]# cd linuxprobe
[root@linuxprobe linuxprobe]# mkdir -p a/b/c/d/e  创建内嵌文件夹或文件
[root@linuxprobe linuxprobe]# cd a
[root@linuxprobe a]# cd b
[root@linuxprobe b]#

4 . 在目录下导入文件

(1)命令操作
输入:rz -y :在目录下导入文件夹
这个命令起作用需要在服务器安装命令插件

(2)也可以用软件工具来连接linux服务器来导入文件,这里使用WinSCP软件来导入文件,下载软件,输入ip地址和密码后,直接在操作界面进入指定目录,在本地进行复制操作,然后在软件操作界面上进行黏贴即可:
在这里插入图片描述

5 . Linux文件传输(scp命令)

从Linux服务器下载文件夹到本地
(1)、使用scp命令

scp /home/work/source.txt work@192.168.0.10:/home/work/
#把本地的source.txt文件拷贝到192.168.0.10机器上的/home/work目录下

scp work@192.168.0.10:/home/work/source.txt /home/work/
#把192.168.0.10机器上的source.txt文件拷贝到本地的/home/work目录下

scp work@192.168.0.10:/home/work/source.txt work@192.168.0.11:/home/work/
#把192.168.0.10机器上的source.txt文件拷贝到192.168.0.11机器的/home/work目录下

scp -r /home/work/sourcedir work@192.168.0.10:/home/work/
#拷贝文件夹,加-r参数

.如果在两个服务器之间进行传输,登录到一台服务器,然后将文件传输到另外一台服务器时,端口不一致,需要加上 -P(大写)+端口号,如:
scp -P 18 apache-tomcat-8.0.33.tar.gz spacename@90.19.4.60:/home/soft/ywkt/
(端口号为18,但spacename@90.19.4.60的端口号为22,所以需要备注端口号)

从服务器上下载文件
scp username@servername:/path/filename /var/www/local_dir(本地目录)
例如scp root@192.168.0.101:/var/www/test.txt 把192.168.0.101上的/var/www/test.txt 的文件下载到/var/www/local_dir(本地目录)
上传本地文件到服务器
scp /path/filename username@servername:/path
例如scp /var/www/test.php root@192.168.0.101:/var/www/ 把本机/var/www/目录下的test.php文件上传到192.168.0.101这台服务器上的/var/www/目录中
从服务器下载整个目录
scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)
例如:scp -r root@192.168.0.101:/var/www/test /var/www/
上传目录到服务器
scp -r local_dir username@servername:remote_dir
例如:scp -r test root@192.168.0.101:/var/www/ 把当前目录下的test目录上传到服务器的/var/www/ 目录

注:目标服务器要开启写入权限。

(2)、使用xshell工具

使用xshell来操作服务非常方便,传文件也比较方便。
就是使用rz,sz
首先,服务器要安装了rz,sz
yum install lrzsz
当然你的本地windows主机也通过ssh连接了linux服务器
运行rz,会将windows的文件传到linux服务器
运行sz filename,会将文件下载到windows本地

(3)、常用方法

在本地上安装Xshell和Xftp软件,在xshell软件中有快捷方式(选择利用Xftp打开当前目录)
也可使用WinSCP软件来进行从服务器下载软件到本地上。


6 . bat文件和.sh文件,运行 .sh可执行文件

(1)tomcat的bin文件夹中存在一份.bat文件和相对应的.sh文件,一个是为了在 window系统上执行的文件,另一个是linux下的批处理文件。例如:startup.bat 和 startup.sh
(2)Linux系统下如何运行.sh文件(sh命令):
在Linux系统下运行.sh文件有两种方法,比如我在root目录下有个datelog.sh文件
一般情况使用第二种方法

第一种(这种办法需要用chmod使得文件具备执行条件(x): chmod u+x datelog.sh):

1、在任何路径下,输入该文件的绝对路径/root/datelog.sh就可执行该文件(当然要在权限允许情况下)

2、cd到datelog.sh文件的目录下,然后执行./datelog.sh

第二种(这种办法不需要文件具备可执行的权限也可运行):

1、在该文件路径下sh加上文件名字即可,sh datelog.sh

2、在任意路径下,sh 加上文件路径及文件名称:sh /root/ datelog.sh

7 . 解压缩包

unzip  /zip(压缩包名称)	解压.zip后缀的压缩包
tar  -xvf  file.tar(文件名) //解压 tar包
tar  -xzvf  file.tar.gz(文件名) //解压tar.gz
tar  -xjvf  file.tar.bz2(文件名)   //解压 tar.bz2
Tar  -xZvf  file.tar.Z(文件名)   //解压tar.Z
unrar  e file.rar(文件名) //解压rar

unzip file.zip(文件名) //解压zip

8 . 查看日志(tail -f +目录/文件名 命令)
tail -f log/run.log(日志文件路径) :查看日志
tail -200f log/run.log(日志文件路径) :查看日志200行日志

tail命令用于查看纯文本文档的后N行或持续刷新内容,格式为“tail [选项] [文件]”。
我们可能还会遇到另外一种情况,比如需要查看文本内容的最后20行,这时就需要用到tail命令了。tail命令的操作方法与head命令非常相似,只需要执行“tail -n 20 文件名”命令就可以达到这样的效果。tail命令最强悍的功能是可以持续刷新一个文件的内容,当想要实时查看最新日志文件时,这特别有用,此时的命令格式为“tail -f 文件名”

9 . 编辑修改并保存文件(vi/vim)

(1)使用vim编辑并保存linux配置文件
使用vim文本编辑的话我们需要的操作首先是使用vim的命令,就是vi+需要修改的文件路径,然后就可以进入需要修改的页面之后再点击insert插入即可进行编辑操作,最后退出进入命令行“:wq”即可保存,这里为大家详细介绍一下。
.
输入:vi /etc/ssh/sshd_config,然后点击enter,这里演示使用vi命令对sshd_config文件进行修改操作。
在这里插入图片描述

然后自己使用方向上下键调整到需要修改的位置,在光标处按“i”或者“insert”键,即可开始修改操作。
然后在最下边的文本框输入大写的G,回车,定位到最后一行
在这里插入图片描述
修改完成之后点击Esc键即可进入命令提示行开始进行保存操作,最下面的INSERT消失之后就可以输入“ :wq“进行保存操作了。
在这里插入图片描述

最后保存完成之后需要重新启动sshd.service这个服务,其他的修改文件也一样需要重新启动服务。
在这里插入图片描述
最后我们按照下图的保存方式用:wq、:w、:w!或者:wq!来对配置文件进行相关的正确保存方式即可。
.在这里插入图片描述

10 . 查看端口占用情况(netstat命令)

netstat命令各个参数说明如下:
  -t : 指明显示TCP端口
  -u : 指明显示UDP端口
  -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
  -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
  -n : 不进行DNS轮询,显示IP(可以加速操作)
即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况··
netstat -ntlp //查看当前所有tcp端口·
netstat -ntulp |grep 80 //查看所有80端口使用情况·
netstat -an | grep 3306 //查看所有3306端口使用情况·

查看一台服务器上面哪些服务及端口
netstat  -lanp

查看一个服务有几个端口。比如要查看mysqld
ps -ef |grep mysqld

查看某一端口的连接数量,比如3306端口
netstat -pnt |grep :3306 |wc

查看某一端口的连接客户端IP 比如3306端口
netstat -anp |grep 3306

netstat -an 查看网络端口 

lsof -i :port,使用lsof -i :port就能看见所指定端口运行的程序,同时还有当前连接。 
nmap 端口扫描
netstat -nupl  (UDP类型的端口)
netstat -ntpl  (TCP类型的端口)
netstat -anp 显示系统端口使用情况

11 . 查看文件内容

cat 文件名 (功能:查看文件内容)


cat -b  文件名(功能:列出行号,仅针对非空白行做行号显示)


cat -n  文件名 (功能:列出行号,包括空白行)


tac 文件名 (功能:从末尾查看文件内容)


more 文件名 (功能:查看文件内容,分页显示)
空白键 :向下翻一页
Enter键 :  代表向下翻一行
q:离开显示文件


less 文件名 (功能:查看文件内容)
空白键 :向下翻动一页;
上下键:上一页或者下一页

12 . 移动文件或重命名(mv)

注意:目标目录要从根目录开始写

mv命令用于剪切文件或将文件重命名,格式为“mv [选项] 源文件 [目标路径|目标文件名]”。
剪切操作不同于复制操作,因为它会默认把源文件删除掉,只保留剪切后的文件。如果在同一个目录中对一个文件进行剪切操作,其实也就是对其进行重命名:

[root@linuxprobe ~]# mv x.log linux.log
[root@linuxprobe ~]# ls
install.log linux.log

13 . 删除文件夹和文件的命令(rm -rf xx)

Linux删除目录很简单,使用rm -rf命令即可。
使用规则:

rm -rf 目录名字   

-r 向下递归,不管有多少级目录,一并删除
-f 直接强行删除,没有任何提示

示例:
删除文件夹实例:
rm -rf /var/log/httpd
将会删除/var/log/httpd目录以及其下所有文件、文件夹

rm -rf tmp
将会删除此目录下tmp文件夹

删除文件使用实例:
rm -f /var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件

(2) [root@linuxprobe ~]# rm -rf * :删除目录下的所有文件,慎用!!

注意:使用 rm -rf 的时候一定要小心,Linux没有回收站。

14 . chmod命令详解(修改文件权限)

作用:
改变一个或多个文件的存取模式(mode在这里插入代码片)
格式:
chmod [options] mode files
只能文件属主或特权用户才能使用该功能来改变文件存取模式。

mode:
可以是数字形式或以who opcode permission形式表示。who是可选的,默认是a(所有用户)。只能选择一个opcode(操作码)。可指定多个mode,以逗号分开。
综上,包含options、who、opcode、permission等选项,下面分别进行介绍
options:

标识含义
-c,–changes只输出被改变文件的信息
-f,–silent,–quiet当chmod不能改变文件模式时,不通知文件的用户
–help输出帮助信息。
-R,–recursive可递归遍历子目录,把修改应到目录下所有文件和子目录
–reference=filename参照filename的权限来设置权限
-v,–verbose无论修改是否成功,输出每个文件的信息
–version输出版本信息

who

标识含义
u用户
g
o其它
a所有用户(默认)

opcode

标识含义
+增加权限
-删除权限
=重新分配权限

permission

标识含义
r 读
w
x执行
s设置用户(或组)的ID号
t设置粘着位(sticky bit),防止文件或目录被非属主删除

作为选择,我们多数用三位八进制数字的形式来表示权限,第一位指定属主的权限,第二位指定组权限,第三位指定其他用户的权限,每位通过4(读)、2(写)、1(执行)三种数值的和来确定权限。如6(4+2)代表有读写权,7(4+2+1)有读、写和执行的权限。
还可设置第四位,它位于三位权限序列的前面,第四位数字取值是4,2,1,代表意思如下:

4,执行时设置用户ID,用于授权给基于文件属主的进程,而不是给创建此进程的用户。 
2,执行时设置用户组ID,用于授权给基于文件所在组的进程,而不是基于创建此进程的用户。 
1,设置粘着位。

实例:

$ chmod u+x file                 给file的属主增加执行权限
$ chmod 751 file                 给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
$ chmod u=rwx,g=rx,o=x file      上例的另一种形式
$ chmod =r file                  为所有用户分配读权限
$ chmod 444 file                同上例
$ chmod a-wx,a+r   file        同上例
$ chmod -R u+r directory        递归地给directory目录下所有文件和子目录的属主分配读的权限
$ chmod 4755                     设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。
可用其他数字搭配测试一下看效果如何.

15 . pwd命令(查看当前目录路径)

pwd命令用于显示用户当前所处的工作目录,格式为“pwd [选项]”。

[root@linuxprobe etc]# pwd
/etc

16 . touch命令(创建文件)

touch命令用于创建空白文件或设置文件的时间,格式为“touch [选项] [文件]”。

在这里插入代码片在创建空白的文本文件方面,这个touch命令相当简捷,简捷到没有必要铺开去讲。比如,touch linuxprobe命令可以创建出一个名为linuxprobe的空白文本文件(如果想创建.txt或者其他文本文件,需要加后缀)。对touch命令来讲,有难度的操作主要是体现在设置文件内容的修改时间(mtime)、文件权限或属性的更改时间(ctime)与文件的读取时间(atime)上面。touch命令的参数及其作用如表2-11所示。
表2-11 touch命令的参数及其作用

参数		作用
-a				仅修改“读取时间”(atime)
-m			仅修改“修改时间”(mtime)
-d			同时修改atime与mtime

接下来,我们先使用ls命令查看一个文件的修改时间,然后修改这个文件,最后再通过touch命令把修改后的文件时间设置成修改之前的时间(很多黑客就是这样做的呢):

[root@linuxprobe ~]# ls -l anaconda-ks.cfg 
-rw-------. 1 root root 1213 May  4 15:44 anaconda-ks.cfg
[root@linuxprobe ~]# echo "Visit the LinuxProbe.com to learn linux skills" >> 
anaconda-ks.cfg
[root@linuxprobe ~]# ls -l anaconda-ks.cfg
-rw-------. 1 root root 1260 Aug  2 01:26 anaconda-ks.cfg
[root@linuxprobe ~]# touch -d "2017-05-04 15:44" anaconda-ks.cfg 
[root@linuxprobe ~]# ls -l anaconda-ks.cfg 
-rw-------. 1 root root 1260 May  4 15:44 anaconda-ks.cfg

(2)同时创建多个文件,写法为文件名之间空格隔开,如:
touch aa.txt bb.txt

17 . Tomcat的常用操作

1.启动tomcat(bin目录下)
./startup.sh

2.关闭tomacatt(bin目录下)
./shutdown.sh

3.解压文件
– 解压命令
tar –xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2 //解压 tar.bz2
tar –xZvf file.tar.Z //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip
tar -xzf apache-tomcat-8.0.15.tar.gz

4、删除文件夹以及文件夹中的所有文件命令:
rm -rf 目录名字
其中:
-r:向下递归删除
-f:直接强行删除,且没有任何提示

5、删除文件命令
rm -f 文件名

6.-查看Tomcat最新日志(首先要进入tomcat/logs/)
tail -f catalina.out (tail -f 可以动态刷新日志)
– 查看全部日志
cat catalina.out
– 查看tomcat运行日志
tail -f catalina.out
– 通过关键字搜索查看日志
cat jeewx-2015-09-20.log | grep 验证码
– 查看固定时间日志
cat jeewx-2015-09-20.log | grep ‘2015-09-20 18:50:15’
– 查看最近50行日志
tail -n 50 -f catalina.out

– 查看主机名
hostname

–打开hosts文件
vi /etc/hosts
修改 hosts文件,发现权限不足,报如下错误
E212: Can’t open file for writing Press ENTER or type command to continue
解决办法:sudo vi /etc/hosts 打开编辑文件即可
sudo命令是很有用的,命令前面加上sudo来解决权限不足问题

二、重启tomacat
1.首先,进入Tomcat下的bin目录
cd /usr/local/tomcat/bin

2.使用Tomcat关闭命令
./shutdown.sh
需要重启服务器的时候-
  在 …/bin 目录下使用 ./shutdown.sh 无法关闭tomcat服务的时候
  使用 ps -ef | grep 项目名
  查看项目对应的进程号
例如:
ps -ef |grep tomcat 输出如下:
46176 pts/2 Ss 0:00 -bash USER=tomcat LOGNAME=tomcat HOME=/app/tomcat PATH=/usr/local/bin:/bin:/usr/bin MAIL=/var/mail/tomcat SHELL=/bin/bash SSH_CLIENT=10.130.103.57 7109 22 SSH_CONNECTION=10.130.103.57 7109 10.1.177.77 22 SSH_TTY=/dev/pts/2 TERM=xterm
46214 pts/2 R+ 0:00 _ ps ef HOSTNAME=app2 TERM=xterm SHELL=/bin/bash HISTSIZE=1000 SSH_CLIENT=10.130.103.57 7109 22 QTDIR=/usr/lib64/qt-3.3 QTINC=/usr/lib64/qt-3.3/include SSH_TTY=/dev/pts/2 USER=tomcat

则 5144 就为进程号 pid = 46176 和 46214
此时可以使用 kill -9 46214 就可以彻底杀死tomcat


3.查看Tomcat是否以关闭
ps -ef|grep java
– 查看Tomcat进程
ps -ef | grep tomcat
如果显示以下相似信息,说明Tomcat还没有关闭
root 7010 1 0 Apr19 ?
00:30:13 /usr/local/java/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m
-Xmx1024m -XX:NewSize=256m
-XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
-Djava.endorsed.dirs=/usr/local/tomcat/endorsed
-classpath /usr/local/tomcat/bin/bootstrap.jar
-Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat
-Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start

4*如果你想直接干掉Tomcat,你可以使用kill命令,直接杀死Tomcat进程
kill -9 7010
5.然后继续查看Tomcat是否关闭
ps -ef|grep java

6.如果出现以下信息,则表示Tomcat已经关闭
root 7010 1 0 Apr19 ? 00:30:30 [java]

7.最后,启动Tomcat
./startup.sh

–开启端口(以80端口为例)
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 写入修改
/etc/init.d/iptables save 保存修改
service iptables restart 重启防火墙,修改生效

–关闭端口(以80端口为例)
/sbin/iptables -I INPUT -p tcp --dport 80 -j DROP 写入修改
/etc/init.d/iptables save 保存修改
service iptables restart 重启防火墙,修改生效


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值