目录命令
cd xx : 进入某个目录
cd .. :返回上一级目录
cd - :返回上一级目录
cd / :返回(root)根目录
cd ~ :返回用户根目录(home)
文件列表
ls(list) :显示当前目录下的内容
ls -l :竖排显示当前目录下的内容(格式化)
ls -a :显示所有文件,包括隐藏文件
ll :是ls - l 的缩写
ll -h :在ll的基础上,显示文件的大小
创建、移除目录
mkdir xx :创建在当前目录下创建xx目录
mkdir -p a/b/c:创建多级目录
mkdir -v xx :创建xx目录,并提示成功、失败信息
rmdir xx :删除xx目录,只能删除空目录
浏览文件
cat xx.xml :显示xx文件里的内容
more xx.xml :用于内容超过一个屏幕的情况。空格显示下一页,回车显示下一行。
less xx.xml :和more一样,通过pgup \ pgdn 进行上下翻页。
tail -5 目录 :显示最后的5行数据
tail -5 xx.xml :显示最后的5行内容
tail -f xx.log :动态查看日志
结束查看: CTRL + C
创建文件
创建a.txt文件
touch a.txt:
vim/vi a.txt:
//使用查看文件的命令配合 重定向也可以创建文件,如下:
cat /etc/passwd.txt > a.txt 将输出定向到a.txt中
cat /etc/passwd .txt>> a.txt 输出并且追加
删除文件
rm xx.xml :删除xx文件,需要确认
rm -f xx.xml :直接删除文件,不需要确认
rm -r 目录 :递归删除目录
rm -rf 目录 :不需确认,递归删除
rm -rf * :删除当前目录下所有文件
rm -rf /* :自杀,包含子文件
文件复制、移动、重命名
cp a.txt b.txt :把a文件复制一份,名称为b
cp a.txt ../ :把a文件复制一份到上一层目录中
mv a.txt ../ :把a文件移动到上一层目录
mv a.txt b.txt :把a文件重命名为b
打包、压缩、解压
tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。
常用参数:
-c:创建一个新tar文件
-v:显示运行过程的信息
-f:指定文件名
-z:调用gzip压缩命令进行压缩
-t:查看压缩文件的内容
-x:解开tar文件
打包:
tar -cvf xx.tar ./* :把当前目录下的所有打包为一个xx.tar文件
tar -cvf xx.tar aa a.txt :把当前目录下的aa目录下的所有和a.txt打包为xx.tar
打包并压缩:
tar -zcvf xx.tar.gz ./* :打包所有文件,并压缩为xx.tar.gz压缩包
tar -zcvf xx.tar.gz aa a.txt:打包aa目录下的所有和a.txt,并压缩
解压: tar -xvf xx.tar.gz -C /user/aaa :解压到user/aaa目录下
注意: 上面的打包 压缩 解压 后面都可以跟上-C+路径,代表操作到什么地方
-C(大写) 后面跟上解压到的地方, / 代表root根目录, ./代表当前目录(也可以不写) ../代表上级目录。
查找
grep [选项]... PATTERN [FILE]... :查找文件里面的字符串
grep -i “xx” 文件 :-i代表忽略大小写 ; -v 代表反向,不包含xx的字符串
后面加上 –color 找到后高亮显示,加上 –A5 -B5 加上前五行和后五行
locate a.txt :查找a.txt 。它的效率高、速度快。(从数据库mlocate中查找的)
缺点:只能按照文件名搜索。
whereis :只能查看系统命令
whereis -m ls :查看ls命令的参考文档所在地
whereis -b ls :查看ls命令所在地
whereis ls :查看ls命令的所在地和参考文档
which:查看系统命令, 能看到命令的位置和别名
定义一个别名:alias ls =’aa’
find:在范围内搜索匹配的文件,非常耗费系统资源。
格式 : find 范围 搜索条件 eg: find / -name a.txt;(需要完全匹配)
find通配符: * 任意内容 ? 任意一个字符 [] 括号里的任何一个(模糊查询)
find /root -name “ *” :查找root下面的所有文件、文件夹
find /root -name “*[ab]” :查找以a或b结尾的文件、文件夹
name会区分大小写, iname 不会区分
k是小写,kb,如果单位是兆 则是大写 M
VI和VIM编辑器
在Linux下一般使用vi编辑器来编辑文件。 vi既可以查看文件也可以编辑文件。 三种模式:命令行、插入、底行模式。
切换到命令行模式:按Esc键;
切换到插入模式:按 i 、o、a键;
i 在当前位置生前插入
I 在当前行首插入
a 在当前位置后插入
A 在当前行尾插入
o 在当前行之后插入一行
O 在当前行之前插入一行
切换到底行模式:按 :(冒号); 更多详细用法,查询文档《Vim命令合集.docx》和《vi使用方法详细介绍.docx》
打开文件:vim file
退出:esc :q
修改文件:输入i进入插入模式
保存并退出:esc :wq
不保存退出:esc :q!
进入插入模式:
i:在当前的光标所在处插入
o:在当前光标所在的行的下一行插入
a:在光标所在的下一个字符插入
快捷键:
dd – 快速删除一行
R – 替换
重定向输出
> 重定向输出,覆盖原有内容; >> 重定向输出,又追加功能; 示例:
cat /etc/passwd > a.txt 将输出定向到a.txt中
cat /etc/passwd >> a.txt 输出并且追加
&&命令执行
命令之间使用 && 连接,实现逻辑与的功能。
只有在 && 左边的命令返回真(命令返回值 $? == 0),&& 右边的命令才会被执行。
只要有一个命令返回假(命令返回值 $? == 1),后面的命令就不会被执行。
mkdir test && cd test
网络通讯命令
ifconfig 显示或设置网络设备。
ifconfig 显示网络设备
ifconfig eth0 up 启用eth0网卡
ifconfig eth0 down 停用eth0网卡 ping 探测网络是否通畅。
ping 192.168.0.1 netstat 查看网络端口。
netstat -an | grep 3306 查询3306端口占用情况
系统管理命令
date 显示或设置系统时间
date -s “2014-01-01 10:10:10“ 设置系统时间 df 显示磁盘信息
df : 可显示磁盘的文件系统与使用情形。
free
–m 以mb单位显示内存
free命令是一个快速查看内存使用情况的方法,是对 /proc/meminfo 收集到的信息的一个概述。
top
可实时查看系统的内存使用情况,有多少物理内存已经使用了,多少物理内存空闲,多少缓存,CPU的使用情况,每个进程的进程号是多少,占用的虚拟内存是多少等信息
cat /proc/meminfo
/proc/meminfo文件列出了你想了解的所有的内存使用情况的总的概览。
pmap
提供了进程的内存映射,用于显示一个或多个进程的内存状态,其报告进程的地址空间和内存状态信息。
clear 清屏幕
ps 正在运行的某个进程的状态
ps –ef 查看所有进程
ps –ef | grep ssh 查找某一进程 kill 杀掉某一进程
kill 2868 杀掉2868编号的进程
kill -9 2868 强制杀死进程
du 显示目录或文件的大小。
du –h 显示当前目录的大小
who 显示目前登入系统的用户信息。
hostname 查看当前主机名
修改:vi /etc/sysconfig/network
uname 显示系统信息。
uname -a 显示本机详细信息。 依次为:内核名称(类别),主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称
用户管理
useradd 添加一个用户
useradd test 添加test用户
useradd test -d /home/t1 指定用户home目录
passwd 设置、修改密码
passwd test 为test用户设置密码
切换登录:
ssh -l test -p 22 192.168.19.128
su – 用户名
userdel 删除一个用户
userdel test 删除test用户(不会删除home目录)
userdel –r test 删除用户以及home目录
组管理
当在创建一个新用户user时,若没有指定他所属于的组,就建立一个和该用户同名的私有组
创建用户时也可以指定所在组
groupadd 创建组
groupadd public 创建一个名为public的组
useradd u1 –g public 创建用户指定组 groupdel 删除组,如果该组有用户成员,必须先删除用户才能删除组。
groupdel public
文件权限
文件类型:
一 代表文件 ,
L 代表连接,也就是快捷方式
b 代表目录
权限管理
chmod 变更文件或目录的权限。
chmod 755 a.txt
chmod u=rwx,g=rx,o=rx a.txt
chmod 000 a.txt / chmod 777 a.txt chown 变更文件或目录改文件所属用户和组
chown u1:public a.txt :变更当前的目录或文件的所属用户和组
chown -R u1:public dir :变更目录中的所有的子目录及文件的所属用户和组
帮助命令:
man 命令:显示命令的使用文档
man -k 命令 :找出包含 命令 字符串的所有命令
info 命令:会找出所有版本的帮助文档,文档操作比较麻烦
help 命令
命令 - - help
其他常用管理器
ps -ef :任务管理器
ps -ef | grep java :先显示出任务管理器,再在里面查找出和java相关的东西
rpm -qa | grep java : 搜索安装的java软件 ( redhat package manager - query all )
pwd:显示当前所在目录名字
wget http://......:下载东西
su 用户名:切换用户
su -用户名:切换用户
[
1、su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了。只有切换 了Shell环境才不会出现PATH环境变量错误,报command not found的错误。
2、su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。
]
id :查看用户的UID 和GID
clear :清屏
hostnamectl set-hostname 新名字 : 更改服务器名字 针对centos7
查看防火墙状态: systemctl status firewalld
启动/关闭防火墙:systemctl start/stop firewalld
禁用防火墙:systemctl disable firewalld
启用防火墙:systemctl enable firewalld
开放端口: firewall-cmd --add-port=123/tcp --permanent
给某个用户授权某个目录:chown -R username /home/ftp
改变文件/文件夹的权限:chmod -R 777 /home/ftp
强制删除某个应用: rpm -e vsftpd --nodeps --force ,不管应用的依赖