linux 常用命令

vim

vim 打开文档
插入模式 i esc退出
命令行模式 :wq 保存退出 :q 不保存退出 :q! 修改不保存强制退出

1)拷贝当前行yy,拷贝当前行向下的5行5yy,并粘贴(p)。
2)删除当前行dd,删除当前行向下的5行5dd
3)在文件中查找某个单词[命令行下关键字,回车查找,输入n就是查找下一个]
4)设置文件的行号,取消文件的行号[命令行下:set nu和set nonu]
5)编辑/etc/profile 文件,使用快捷键到底文档的最末行[G]和最首行[gg]
6)在一个文件中输入“hello”,然后又撤销这个动作u
7)编辑/etc-profile文件,并将光标移动到20行shift+g 显示行号 输入要到达的行号 再用shift+g

编辑强制退出 再次进入错误:
(1)还原到上次编辑的状态,然后再删除掉.swp文件,做法:vim -r filename(你上次未保存的文件名 ),会出现这个文件类似于swp用来保存你修改文件的副本,而swp文件是我们用来还原的副本。当我们还原之后,可以使用rm -f xx.swp 删除掉这个副本。

(2)当我们不需要还原的时候,只需要我们直接删除这个副本就可以了。利用rm命令直接删除这个副本。
E325: ATTENTION Found a swap file by the name "./.backu.sh.swp"

ls -a
rm .hello.java.swp

cd 切换目录
mkdir xxx 创建文件夹
pwd 当前目录

useradd dll 新建用户
passwd dll 密码
su -dll 切换用户 高权限到低权限不需要输入密码 exit 会退出回到原来的用户

groupadd wdh 新建组
useradd -g wdh xwd 新建用户指定归属的组
groupadd hb 新建组
usermod -g hb xwd 修改用户的组
用户配置文件(用户信息) /etc/passwd
组配置文件(组信息) /etc/group
口令配置文件(密码和登录信息,加密的) /etc/shadow

/elc/passwd文件
用户(user)的配置文件,记录用户的各种信息每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
/etc/shadow文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group文件
组(group)的配置文件,记录Linux包含的组的信息每行含义:组名:口令:组标识号:组内用户列表

实用指令
运行级别 找回丢失的root密码
帮助指令 man [指令]
help
ls -a 不要忽略用.的文档
文件目录
pwd 显示当前目录的绝对路径
ls 显示当前目录内容 ls -a 显示隐藏文件 ls -l 详细信息
cd 切换目录 cd~ 回到家目录 cd.. 上一级目录
mkdir 创建目录 mkdir /usr/dll 在usr下创建dll目录
mkdir -p 创建多级目录
rmdir 删除空目录
rm-rf 删除非空目录
touch 创建空文件
cp 复制指令 -r 递归复制整个文件夹

cp /usr/dll/hello.txt /usr/dll/dll 绝对路径
cp hello.txt dll/ 相对路径 当前目录的文件拷贝到 当前目录的dll文件夹下
cp -r dll/ dll1/ 将dll整个目录复制到dll1下面
cp -r dll/ dll1/ 有相同文件 会 强制覆盖

rm 删除文件或目录
-r 递归删除整个文件夹
-f 强制删除不提示
mv 移动文件与目录 或 重命名
mv 旧 新 重命名
mv /usr/dll /usr/dll1 移动文件
cat 查看文件内容 只能浏览
-n 显示行号
cat -n 111.txt | more 分页显示 按空格查看下一页
more 分页显示 内容
more 111.txt

空白键(space)代表向下翻一页;
Enter代表向下翻一行
q代表立刻离开more,不再显示该文件内
Ctr+F向下滚动一屏
ctrl+B返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
less 一点点的加载显示 不全部加载

>输出重定向 >>追加
ls -l > a.txt 将ls-l 显示的内容 覆盖写入到a.txt 该文件不存在就创建
ls -l >> a.txt 将ls-l 显示的内容 追加写入到a.txt 该文件不存在就创建
cat a.txt > b.txt
echo "要写的内容" > a.txt
cal 当前的时间日历
echo 输出命令到控制台
echo $PATH 输出当前环境变量路径
/user/java/jdk1.8.0_60/bin
head 显示要显示文件的开头部分 默认前10行
head -n 5 a.txt 查看前五行
tail 显示末尾内容
tail -f a.txt 实时追踪文档更新
ln 符号链接 快捷方式
history 查看执行过的指令
history 10 显示最新的10条
!178 执行编号为178的指令

时间日期
date 显示当前日期
cal 显示日历时间

搜索 查找
find 搜索范围 -name
find /usr -name b.txt 根据名字查找
find /usr -name *.txt 根据名字通配符查找
find /usr -user dll 根据文件的用户查找
find /usr -size +20M 根据文件大小
locate 快速定位文件夹路径
先使用updatedb创建locate 数据库
locate b.txt 查找文件位置
grep 和管道符号 |
grep 过滤查找 -n 显示匹配行及行号 -i 忽略字母大小写
cat b.txt | grep -n lib 查看 b.txt中 lib字符 并输出所在行号
cat b.txt | grep -ni lib 忽略大小写

管道符号 | 将前面一个命令的处理结果输出给后面的命令处理


压缩和解压
gzip 压缩 gunzip 解压缩 .gz格式 不保留源文件
zip压缩 unzip解压缩 .zip格式
zip -r xxx.zip /usr/* 将文件递归压缩
zip -r dll.zip /usr/dll 将dll文件夹压缩成 dll.zip
unzip -d /usr dll.zip -d指定加压目录
tar 打包指令 .tar.gz
tar [选项] xxx.tar.gz 要打包的文件
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压维
-x 解压.tar文件
tar -zcvf ab.tar.gz a.txt b.txt 压缩 a.txt b.txt 成 ab.tar.gz
tar -zcvf ab.tar.gz /usr/ 最整个目录进行压缩
tar -zxvf ab.tar.gz 解压到当前文件夹
tar -zxvf ab.tar.gz -C /opt/ 解压到/opt/目录下
-C 目录:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项


进程管理
ps 查看进程信息
ps -aux | more
ps -ef| grep xxx 显示父进程
ps -aux | grep xxx

kill 杀掉进程 kill 进程号
kill xxxx
kill -9 xxxx 强制杀死进程
killall killall 进程名称
pstree 查看进程树 -p 显示进程的pid -u 显示所属用户

服务管理
服务(service)本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,
比如(mysql,sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。
centos 7.0 后 不再使用 service 而是用 systemctl
[start |stop |restart |reload |status ]
1.防火墙状态
接着先是看centos7的防火墙的状态,查看的命令为
sudo systemctl status firewalld。
查看后,看到active(running)就意味着防火墙打开了。
2.启动防火墙
打开防火墙的命令为:
sudo systemctl start firewalld。
3.关闭防火墙
如果想关闭防火墙,命令为:
sudo systemctl stop firewalld。
关闭后查看是否关闭成功,如果看到inactive(dead)就意味着防火墙关闭了。
telnet 查看linux的某个端口是否可以访问
telnet 101.132.38.115 80


yum 联网使用
yum list |grep xxx 查询服务器软件列表
yum install xxx 下载安装

原文地址:https://www.cnblogs.com/donglulu/p/12582423.html