Linux常用命令

  • 开启、关闭防火墙
service iptables start #开启
service iptables stop #关闭
  • grep
grep -C 5 foo file  #显示file文件中匹配foo字串那行以及上下5行
grep -B 5 foo file  #显示foo及前5行
grep -A 5 foo file  #显示foo及后5行
grep -n foo file #显示行号和匹配结果
grep -i foo file #忽略大小写
  • 查看文件编码
file test.txt
  • 控制台显示当前绝对路径
vi /root/.bash_profile
export PS1='[\u@\h:\w]\$' #添加一行
source /root/.bash_profile #生效
  • 修改cp、mv、rm命令使在覆盖或移除时提示(修改.bash_profile)
alias cp='cp -i' #添加一行
alias mv='mv -i' #添加一行
alias rm='rm -i' #添加一行
  • 查看所属公网IP
curl ip.cn
  • vim复制粘贴行
yy(复制),移动光标,p(粘贴)
5yy(复制当前行向下的5行),移动光标,p(粘贴)
  • vim删除行
dd #删除当前行
5dd #删除当前行向下的5行
  • vim删除一个单词/光标之后的单词剩余部分
dw
  • vim查找某个字符串
命令模式下输入**/关键字**,回车查找,输入n查找下一个,输入N查找上一个
  • vim显示行号和隐藏行号
:set nu #显示行号
:set nonu #隐藏行号
  • vim移动到首行和末行
gg #移动到首行
G #移动到末行
  • vim移动指定行
set :nu(显示行号),输入行号20,输入shift+g即可移动到第20行
  • vim移动行首和行末
^ #移动到行首
$ #移动到行末
  • vim撤销修改
u #在正常模式下操作
  • vim撤销字符串替换
:%s/x/y/g #x替换成y
  • 关机&重启命令
shutdown -h now #立刻关机
shutdown -h 1 #1分钟后关机
shutdown -r now #立即重启
halt #关机
reboot #重启
  • 用户登录和注销
su - dev #登录到dev用户
logout #注销
  • 创建用户并指定密码
useradd dev #创建用户组为dev、用户名为dev的用户,若不指定用户组则自动创建与用户名同名的用户组
useradd dev -g newgroup #创建用户时指定用户组
useradd -d /home/dev dev #创建用户时指定用户主目录
passwd dev #指定或修改用户密码
  • 删除用户
userdel dev #删除用户dev
userdel -r dev #删除用户dev,并删除用户主目录
  • 查看用户
id dev #查看dev用户信息,会显示用户id和用户组id
whoami #查看当前用户
  • 用户组管理
groupadd test #创建test用户组
groupdel test #删除test用户组
usermod -g dev test01 #修改test01的用户组为dev
  • 修改文件所有者和所在组
chown dev test.log #将test.log文件的所有者修改为dev,**注:dev属于当前用户组**
chown dev:dev test.log #将test.log文件的所有者修改为dev组下的dev用户
chown -R dev /home/dev/ #将/home/dev目录及目录下所有文件的所有者修改为dev
chgrp dev test.log #将test.log文件的所在组修改为dev组,**注:所有者仍为当前用户**
  • 修改文件或目录权限
chmod u=rwx,g=rx,o=x [文件或目录名] #u:所有者 g:所在组 o:其他用户 a:所有用户
chmod 751 [文件或目录名] #r=4 w=2 x=1
chmod o+w [文件或目录名] #增加其他用户的写权限
chmod a-x [文件或目录名] #删除所有用户的执行权限
  • 查看用户有关配置文件
cat /etc/passwd #用户配置文件,存放用户信息,每行含义: **用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell**
cat /etc/group #用户组配置文件,存放用户组信息,每行含义: **组名:口令:组标识号:组内用户列表**
cat /etc/shadow #口令配置文件,存放加密密码和登录信息,每行含义:**登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志**
  • 建立&删除软链接
ln -s [原文件或目录] [软链接名] #原文件或目录创建一个软链接
rm -rf [软链接名] #删除软链接,**注意:软链接名后不要带/,否则会删除软链接目录下的文件,当使用pwd仍然显示软链接所在目录**
  • 查看历史命令
history #查看所有历史命令
history 10 #查看最近10个命令
!5 #执行历史编号为5的命令
  • 查找文件路径
find /home -name test.log #根据名称,查找/home目录下的test.log文件
find /home -user dev #根据用户,查找/home目镜下所有dev用户的文件
find / -size +20M #根据文件大小,查找系统中所有大于20M的文件,**+表示大于,-表示小于,不加表示等于**
locate test.log #查找test.log文件,**基于数据库查询,初次运行前必须使用updatedb命令创建locate数据库**
  • 增加一块磁盘
fdisk /dev/sdb #为新磁盘分区,输入m查看帮助,依次输入n->p->1->回车->回车,最后w保存
lsblk -f #查看分区结果,显示sdb1
mkfs -t ext4 /dev/sdb1 #格式化分区
lsblk -f #查看格式化结果,显示FSTYPE和UUID
mkdir /export #创建挂载目录
mount /dev/sdb1 /export #挂载磁盘
lsblk -f #查看挂载结果,显示MOUNTPOINT
vim /etc/fstab #设置自动挂载,否则重启后失效,增加一行:/dev/sdb1 /export ext4 defaults 0 0
  • 磁盘情况查询
df -h #查询系统整体磁盘使用情况
du -h --max-depth=1 /export #查看指定目录的磁盘占用情况,默认为当前目录,子目录深度为1
ll /export|grep "^-"|wc -l #查看/export目录下的文件个数
ll -R /export|grep "^-"|wc -l #查看/export目录下的文件个数,包括子目录
ll /export|grep "^d"|wc -l #查看/export目录下的目录个数
tree /export #以树状显示/export目录结构,需要安装命令:yum install tree
  • 踢掉某个SSH登录用户
ps -aux|grep sshd #查看登录用户,获取要踢掉的进程号
kill [进程号] #杀掉进程
  • 查看进程树
pstree #-u 显示进程的所属用户 -p 显示进程的PID
  • top动态监控进程
top 

#选项说明
-d [秒数] #每隔几秒刷新监控
-i #不显示任何闲置或僵死进程
-p [pid] #监控指定pid进程

#交互操作说明
P #按CPU使用率排序,默认
M #按内存使用率排序
N #按PID排序
q #退出top
u #输入用户,查看指定用户执行的进程
k #输入pid,杀死进程 
  • rpm包的管理
rpm -qa|grep firefox #查看已安装firefox的版本
rpm -e firefox #卸载firefox
rpm -ivh your-package.rpm #安装rpm包
  • iptables管理防火墙
iptables -nL #列出现有规则
iptables -F #删除所有规则
iptables -I INPUT -p tcp --dport 22 -j ACCEPT #接收22端口的TCP请求
iptables -I INPUT -p tcp --dport 10:21 -j ACCEPT #接收10-21端口的TCP请求
iptables -I INPUT -p tcp -s 10.236.45.120 --dport 8080 -j ACCEPT #接收ip是10.236.45.120且访问8080端口的TCP请求,也可以指定网段,如:10.236.45.120/24
iptables -I INPUT -p icmp -j ACCEPT #接收所有icmp请求
iptables -I INPUT -i lo -j ACCEPT #允许本地回环地址访问,-i 指定设备
iptables -A INPUT -j REJECT #拒绝所有请求,-A 追加 -I 插入到首行
service iptables save #保存规则
  • 开机自启动
vi /etc/rc.d/rc.local
su - webdev -c "cd /export/tomcat7;./bin/startup.sh" #在rc.local文件加入此行,表示开机以webdev用户启动tomcat7
chmod +x /etc/rc.d/rc.local #用于rc.local没有执行权限
  • 修改系统时区
echo "ZONE=Asia/Shanghai" >> /etc/sysconfig/clock
rm -f /etc/localtime
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
reboot
date -R #查看时间并显示时区
  • 查看主机外网ip
curl ip.me
curl ip.cn
curl ifconfig.me #海外
  • 分析接口调用耗时
curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "https://www.baidu.com"

示例结果:

time_connect: 1.137
time_starttransfer: 1.268
time_total: 1.268
  • 批量去除文件后缀
rename .template "" *.template # 去掉文件的template后缀,rename第一个参数是需要替换的字符串,第二个是替换成的目标字符串,第三个是匹配的文件
  • 转换文件编码
iconv -f utf8 -t gbk old.csv -o new.csv
  • 回到上次访问的目录
cd -
  • 历史命令搜索
ctrl + r #出现提示:(reverse-i-search)
  • Git
git remote -v #查看仓库远程地址
  • 查看进程的环境变量
sudo cat /proc/${pid}/environ|tr '\0' '\n'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值