一、目录操作
常用目录
/root: 该目录为系统管理员,也称作超级权限者的用户主目录。
/home: 用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/etc: 这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/usr: 这是一个非常重要的目录,存放系统用户共享资源
1、列出文件及目录
ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。 格式:ls [参数] [路径或文件名] 参数: -a 显示所有文件或目录(包含隐藏的文件) -l 显示文件详细信息 常用: 在linux中以 . 开头的文件都是隐藏的文件 ls ls -a 显示所有文件或目录(包含隐藏的文件) ls -l 列出当前目录下的文件列表,以详细信息展示,可以缩写为ll ls -l / 列出根目录下的文件列表,以详细信息展示
2、切换目录
cd(change directory)命令可以用来切换目录 格式: cd <路径或目录名> 常用: cd app 切换到app目录 cd .. 切换到上一层目录 cd / 切换到系统根目录 cd ~ 切换到用户主目录 cd - 切换到上一个所在目录
3、创建目录
mkdir(make directory)命令可用来创建子目录。 格式: mkdir [参数] <目录路径或目录名> 参数: -p 级联创建目录结构 常用: mkdir app 在当前目录下创建app目录 mkdir –p app2/test 级联创建aap2以及test目
4、删除目录
rmdir(remove directory)命令可用来删除“空”的子目录 格式: rmdir <目录路径或目录名> 常用: rmdir app 删除app目录
二、文件操作
1、查看文件内容
cat命令
cat 用于显示文件的内容。 格式: cat [参数] <文件名> 参数: -n 对输出的所有行编号 常用 cat yum.conf cat -n yum.conf
more命令
more 一般用于要显示的内容会超过一个画面长度的情况。按空格键显示下一个画面。回车显示下一行内容。 格式: more [参数] <文件名> 常用: more yum.conf 快捷键: 空格 翻页 确定 下一行 q 退出查看
less命令
less 用法和more类似,不同的是less可以通过PgUp、PgDn键来控制上下翻页。 格式: less [参数] <文件名> 常用: less yum.conf 快捷键: PgUp 上一页 PgDn 下一页 q 退出查看
head命令
head 查看文件的前面部分,默认显示前10行 格式: head [参数] <文件名> 参数: -n 显示每个文件的前n行内容 常用: head yum.conf 显示文件的前10行 head -100 yum.conf 显示文件的前100行
tail命令
tail 查看文件的后面部分,默认显示最后10行 格式: tail [参数] <文件名>io 参数: -n 显示每个文件的后n行内容 -f 即时输出文件变化后追加的数据。 常用: tail yum.conf 显示文件的最后10行= tail -100 yum.conf 显示文件的最后100行 tail -f yum.conf 显示文件的最后10行,并且监控文件的变化,输出文件变化后追加的数据。
2、
grep 查找符合条件的字符串。 格式: grep <text> [参数] <文件名> 参数: -i 忽略大小写 -n 输出的同时打印行号 -B 显示前N行的内容 -A 显示后N行的内容 --color 高亮展示查询关键字 常用: grep headers install.log 在文件中查找headers grep -B 10 headers install.log 在文件中查找headers,显示前10行的内容 grep -A 10 headers install.log 在文件中查找headers,显示后10行的内容 grep -A 10 --color headers install.log 在文件中查找headers,高亮展示关键字
3、创建空文件
touch 用于创建一个空文件 格式: touch <文件名> 常用: touch aa.txt
4、删除文件
rm 用于删除文件或者目录 格式: rm [参数] <文件名> 参数: -f 强制删除。忽略不存在的文件,不提示确认 -r 递归删除目录及其内容 常用: rm a.txt 删除a.txt文件,输入y/n,y确认删除,n不删除 rm -f a.txt 不询问,直接删除 rm -r aa 删除aa目录,每个目录及文件都提示 rm -rf aa 不询问递归删除aa目录 rm -rf * 删除当前目录下所有文件 rm -rf /* 删除根目录下所有文件(自杀)
5、文件编辑
vi/ 用于编辑文件, 一共有三种模式:命令行模式、插入模式、底行模式。 格式: vi/vim [参数] <文件名> 命令行模式: 用户在命令行模式可以按一些快捷键达到快速输入的目的,例如复制,粘贴,删除,插入等 插入模式: 用户可以在插入模式对文件内容进行编辑 底行模式: 用户可以底行模式输入一些命令,对文件进行操作,例如:保存退出,不保存退出,查找等 用户使用vi/vim命令编辑文件,刚开始进入到命令行模式,之后可以使用命令来切换模式 命令行模式-->插入模式: i 在当前位置插入 I 在当前行首插入 a 在当前位置后插入 A 在当前行尾插入 o 在当前行之后插入一行 O 在当前行之前插入一行 插入模式-->命令行模式: Esc 从插入模式切换到命令行模式 命令行模式-->底行模式: :(冒号) 从命令行模式切换到底行模式 命令行模式快捷键: dd 快速删除一行 yy 拷贝当前行 nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。 p 在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。 P 在当前行前粘贴 底行模式命令: wq 保存退出 q! 强制退出并忽略所有更改 e! 放弃所有修改,并打开原来文件。 /text 查找text,按n健查找下一个,按N健查找前一个。
查找指令:
/xxx 往下查找
?xxx 往上
n 下一个
:set hls 打开高亮
:set nohls 关闭高亮
三、通用文件或目录操作
cp(copy) 将源文件复制至目标文件,或将多个源文件复制至目标目录。 格式: cp [参数] 源目录或文件 目标目录或文件 参数: -r 递归复制目录及其子目录内的所有内容 常用: cp install.log install.log.bak 将install.log复制为install.log.bak文件 cp install.log aaa/ 将install.log文件复制到当前目录下的aaa目录下 cp install.log bbb/install.log.bak 将install.log文件复制到当前目录下的bbb目录下,改名为install.log.bak cp aaa -r bbb/ 递归复制aaa目录及子目录的所有内容到bbb目录下 cp aaa -r bbb/ccc 递归复制aaa目录及子目录的所有内容到bbb目录下,改名为ccc 复制文件,如果后一个参数是目录,则复制文件到指定目录 复制文件,如果后一个参数是文件,则复制文件到指定路径,并改名 复制目录,如果后一个参数是已经存在的目录,则复制目录到指定目录下 复制目录,如果后一个参数是不存在的目录,则复制目录到指定路径下,并改名
2、移动文件或目录
mv(move) 将源文件重命名为目标文件,或将源文件移动至指定目录。 格式: mv 源目录或文件 目标目录或文件 常用: mv install.log install.log.bak 将install.log重命名为install.log.bak mv install.log aaa/ 将install.log文件移动到当前目录下的aaa目录下 mv install.log bbb/install.log.bak 将install.log文件移动到当前目录下的bbb目录下,改名为install.log.bak mv aaa bbb/ 将aaa目录移动到bbb目录下 mv aaa bbb/ccc 将aaa目录移动到bbb目录下,重命名为ccc 移动文件,如果后一个参数是目录,则移动文件到指定目录 移动文件,如果后一个参数是文件,则移动文件到指定路径,并重命名 移动目录,如果后一个参数是已经存在的目录,则移动目录到指定目录下 移动目录,如果后一个参数是不存在的目录,则移动目录到指定路径下,并重命名
3、打包压缩和解压缩
tar 命令能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,
再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。 格式: tar [参数] <文件或目录列表> 参数: -c: 创建一个新tar文件 -v: 显示运行过程的信息 -f: 指定文件名 -z: 调用gzip压缩命令进行压缩 -x: 解开tar文件 -C: 指定解压路径 常用: tar –cvf aaa.tar ./* 将当前目录下的所有文件打包为aaa.tar tar –zcvf aaa.tar.gz ./* 将当前目录下的所有文件打包压缩为aaa.tar.gz tar –xvf aaa.tar 将aaa.tar提取到当前目录 tar -xvf aaa.tar.gz -C /usr/aaa 将aaa.tar.gz解压到/usr/aaa目录
四、
重定向输出
> 重定向输出,覆盖原有内容 >> 重定向输出,又追加功能 常用: ifconfig > ifconfig.txt 将ifconfig命令的结果输出到 ifconfig.txt文件中 ifconfig >> ifconfig.txt 将ifconfig命令的结果追加到 ifconfig.txt文件中
2、
管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。 示例: ls --help | more 分页查询帮助信息 ps –ef | grep java 查询名称中包含java的进程
3、其他
1. pwd 查看当前工作目录 2. ll -h 友好显示文件大小 3. wget 下载资料
五、Linux权限管理命令
1、资源权限管理
资源类型
普通文件(-)
目录(d)
符号链接(l)
字符设备文件(c)
块设备文件(s)
套接字(s)
命名管道(p)
(x:execute)
普通文件: 包括文本文件、数据文件、可执行的二进制程序文件等。
目录文件: Linux系统把目录看成是一种特殊的文件,利用它构成文件系统的树型结构。
修改资源权限
chmod 变更文件或目录的权限。 格式: chmod [参数] <文件> 参数: -R 以递归方式更改所有的文件及子目录 常用: chmod 755 install.log chmod 000 install.log chmod 777 install.log chmod u=rwx,g=rx,o=rx install.log chmod -R 755 aaa
2、组管理
创建组
groupadd 创建一个用户组,一个用户组中可以有很多用户 格式: groupadd <组名称> 常用: groupadd mysql 创建一个名为mysql的组
删除组
groupdel 删除一个已经存在的组,组中必须没有用户 格式: groupdel <组名称> 常用: groupdel mysql 删除名为mysql的组
3、
创建用户
useradd 创建一个用户 格式: useradd [参数] <用户名> 参数: -d 指定用户目录,如果不指定在home目录下创建一个同名目录 -g 指定用户所属组,如果没有指定组,那么会创建一个同名组 常用: useradd test 添加test用户 useradd test2 -d /home/test2 指定用户home目录 useradd mysql –g mysql 创建一个mysql用户,指定组为mysql组 useradd test2 -d /home/test2 –g mysql 如果在创建用户时没有指定密码,那么新建用户需要设置密码才可以使用 必须在root 超级管理员下设置密码 格式: passwd <用户> 常用: passwd test 为test用户设置密码
删除用户
userdel 删除使用者帐号及相关档案 格式: userdel [参数] <用户> 参数: -r 使用者目录下的档案一并移除 。 在其他位置上的档案也将一一找出并删除 。 常用: userdel test 删除test用户(不会删除home目录) userdel –r test 删除用户以及home目录
su 切换登录用户 (switch user) 格式: su [选项] [-] [用户] 常用: su u1 切换到u1用户 su - u1 切换到u1用户,并且将环境也切换到u1用户的环境(推荐使用) root用作为超级管理员切换到其他用户不需要输入密码 其他用户切换到root用户需要输入密码
如
su - ypzs
结果就直接进入该用户的根目录。
修改资源的用户和组
chown 改变资源的所属用户和组 格式: chown [参数] [用户]:[组] <文件> 参数: -R 递归处理所有的文件及子目录 常用: chown u1:public a.txt 变更当前的目录或文件的所属用户和组 chown -R u1:public aaa 变更目录中的所有的子目录及文件的所属用户和组
六、
1、网络管理命令
网络测试命令
ping 测试网络是否联通 格式: ping <域名或者IP地址>(ctrl+c) 参数: -c 次数,指定ping发送包的次数 常用: ping 192.168.150.128 ping www.baidu.com ping -c 3 www.baidu.com
查看网络状态
ifconfig 查看网络状态
关闭与启动网卡
ifdown 网卡设备名:禁用该网卡设备。
ifup 网卡设备名:启用该网卡设备。
查询网络状态
netstat 用于查看当前计算机开放的端口,从而判断当前计算机启动了哪些服务 格式: netstat <参数> 参数: -t:列出TCP协议端口 -u:列出UPD协议端口 -n:不使用域名和服务名,而使用IP地址和端口号 -a:列出所有的网络连接 常用: netstat -an 查看当前计算机开放的所有的端口 netstat -an | grep 3306 查看占用了3306(mysql)端口的系统程序
2、防火墙管理命令
开启或关闭防火墙
service iptables status 查看防火墙状态
service iptables start 启动防火墙
service iptables stop 关闭防火墙
service iptables rest--art 重启防火墙
3、其他系统管理命令
查看系统进程
ps 正在运行的进程的状态 格式: ps [参数] 参数 -e 所有的进程均显示出来 -f 做一个更为完整的输出 常用: ps –ef 查看所有进程 ps –ef | grep ssh 查找某一进程
杀死进程
kill 杀掉某一进程 格式: kill <进程PID> 常用: kill 2868 杀掉2868编号的进程 kill -9 2868 强制杀死进程
七、从一台服务器连接另一台服务器
sftp root@ip
八、查看tomcat是否启动成功
tail -f logs/catalina.2021-12-15.out