Linux常用命令

vim 打开或新建文件
正常模式
i /a为插入 按Esc退出
复制一行 yy
粘贴 p
删除一行 dd
撤回 u
到文件最下方 G
到文件最上方 gg
行号+shift+g

命令行模式
:q! 强制退出
:wq保存退出
:q正常退出
/xxx 查询文字
:set nu 显示行号
:set nonu 不显示行号

关机或重启
shutdown -h now 立即关机
sync 数据同步到磁盘(保存操作)
reboot 重启
halt 关机
shutdown -h 1 一分钟后关机

用户权限
logout 注销
useradd 用户名 创建用户 -g 组名 用户名 创建一个用户并放入指定组中
passwd 用户名 设置密码
userdel 用户名 删除用户 -r 删除家目录
id 用户名 查询用户名
su - 用户名 切换用户
whoami 查看当前用户
groupadd 组名 创建一个组
groupdel 组名 删除组
usermod -g 组名 用户名 修改用户的组
etc/passwd 用户信息文件
etc/group 组信息文件
etc/shadow 密码文件

实用指令
init 0~7 切换运行级别 图形化为5 命令行为3 0为关机 6为重启 vim /etc/inittab
man 指令 help 指令 为帮助指令
pwd 显示当前绝对路径
cd …/ 回到上以及目录
mkdir 【选项】 目录名 创建目录 mkdir -p /home/animal/cat
rmdir [选项] 目录名 删除目录
rm -rf 目录名 删除非空目录
touch 文件名 创建一个空文件 可以一次创建多个文件
cp 【选项】 源文件位置 目标文件位置 拷贝文件 \cp -r /hoem/animal /root -r递归拷贝
mv oldName newName 重命名 mv /animal/tiger/hello.java /root/animal/ 移动
cat -n 文件名 | more 查看文件只能读
more 文件名 less 文件名 查看文件

覆盖文件内容 ls -l > a.txt 将显示内容写入a.txt中 没有文件就新建

追加到文件末尾
echo “内容” > a.txt 覆盖
echo “内容” >> a.txt 追加
head -n 5 文件名 查看文件头部
tall -n 5 文件名 查看文件尾部 tail -f 文件名 实时监控文件
ln -s 文件路径 [快捷方式名称] 软连接到某个路径下
rm -rf [快捷方式名称] 文件名不能带斜杠 删除软连接
history 显示所有执行过的文件
!历史指令编号 执行历史指令编号

时间类的指令
指定格式年月日 date “+%Y-%m-%d”
cal 2020 日期

查找文件
按文件名称查找 find 【查找范围】 -name 文件名 -user 用户名 -size +20M 大于20M的文件
locate 文件名 快速查找文件路径
cat [文件名] | grep - n 内容 查找文件内容 -i 不区分大小写 -n 行号

解压缩指令
gzip 【文件名】 压缩文件不会保存原来文件
gunzip [文件名] 解压文件
zip -r 文件名.zip /home/* 压缩文件
unzip -d /opt/tmp zip文件 解压文件
tar -zcvf a.tar.gz a.txt b.txt 压缩文件
tar -zcvf home.tar.gz /home/ 压缩该文件夹下所有文件
tar -zxvf a.tar.gz 解压文件
tar -zxvf home.tar.gz -C /opt/ 解压 文件目录要存在

组管理和权限管理
ll -ahl 查看文件所有者
chown 文件名 用户名 修改文件所有者
chgrp 组名 文件名 修改文件所有组
usermod -g 住民 文件名 修改用户所有组

文件权限、
u g o

  • rw- r-- r–. 1 xutaozai developer 0 9月 5 13:57 ok.txt

-:普通文件 d:目录 l:软链接 c:字符设备 {键盘鼠标}b: 块文件{硬盘}
rw- 读写文件权限 x表示文件可以执行 u
r-- 文件所有组用户权限 g
r-- 文件其他组的用户权限 o
1 文件表示文件硬链接 目录表示文件个数
0 表示文件大小 目录为4096
时间表示文件最后修改时间

chmod u所有者 g 所有组 o其他人 a所有人(u,g,o总和) 修改文件权限
chmod u=rwx,g=rx,o=rw ok.txt
chmod u-x,g+w ok.txt
chmod 755 ok.txt rwx r表示 4
w表示 2
x 表示 1
chown -R xutaozai test/ 递归修改文件夹下所有者
chgrp -R developer test/ 递归修改文件夹下所有组

定时任务

crontab -e编辑 -l显示 -r 删除
crontab -e */1 * * * * ls -l /etc >>/root/log.txt 每分钟执行一次
第一个 * 一小时第几分钟
第二个 * 一天中第几个小时
第三个 * 一个月的第几天
第四个 * 一个年的第几个月
第五个 * 一周的星期几

写一个简单定时脚本
touch mydate.sh
date >> /root/date.txt
chmod 744 mydate.sh 给可执行权限
crontab -e
*/1 * * * * /root/mydate.sh

linux 分区与挂载

磁盘使用情况

查看 df -l
ls -l /home | grep “^-” | wc -l 统计目录下 文件个数
ls -l /home | grep “^d” | wc -l 统计目录下 目录个数

网络

进程管理
ps -aux 查看所有进程
ps -aux | grep sshd 查看有没有sshd进程
pstree -p
kill 1360 结束进程 可以踢出非法用户

服务
systemctl xxxx stop start 开启停止 服务
telnet 22
chkconfig 设置启动时服务运行
chkconfig --list
top 显示进程(任务管理器)
netstat -anp | more 查看网络状态

软件包管理
rpm -qa | grep vim 查询是否安装某软件
rpm -qi vim 查询安装的软件包信息
rpm -ql vim 查询软件安装位置
rpm -qf /etc/passwd 查询文件属于那个软件包
rpm -e firfox 删除软件

yum安装
yum list | grep xxx 查询
yum install xxx 安装

jdk配置环境变量
vim /etc/profile

JAVA_HOME=/opt/jdk1.7.0_79
PATH=/opt/jdk1.7.0_79/bin:$PATH
export JAVA_HOME PATH

开放端口防火墙端口
修改 文件 vim /etc/sysconfig/iptables
重启防火墙 services iptables restart

shell编程
备份数据库

系统函数
basename /home/aaa/test.txt >>> test.txt
dirname /home/aaa/test.txt >>> /home/aaa

首行 #!/bin/bash
source /etc/profile 刷新配置文件
多行注释
:<<! asdasdas !

运算式 格式
$[(2+3)*6]
./myshell 4 8
$[$1+$2]

条件判断 格式
if [ “OK” = “OK” ]
then
echo “equal”
fi

if [ $1 -ge 60 ]
then
echo “good”
elif [ $! -lt 60 ]
echo “NOT Good”
fi
for循环格式

for i in “$@”
do
echo “the num is $i”
done

SUM=0
for ((i=1;i<=100;i++))
do
SUM= [ [ [SUM+ i ] d o n e e c h o " s u m = i] done echo "sum= i]doneecho"sum=SUM"

while 循环
SUM=0
i=0
while [ $i -le 1 ] d o S U M = 1 ] do SUM= 1]doSUM=[ S U M + SUM+ SUM+i]
i= [ [ [i+1]
done
echo “sum=$SUM”

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值