linux各种命令(持续更新)

命令查找大文件

du -h --max-depth=1
du -h --max-depth=1 |grep 'G' |sort

linux查找所有日志log文件&并按从大到小排序&按M或G为单位显示

find / -name *.log | xargs ls -Slh

注释:
xargs 传递参数,find找到的结果传递给ls

ls -Slh

-Sl 从大到小显示详情
-Slr 从小到大显示详情
-h humans 以人类易读的方式显示(正常情况下显示为bit,加上-h后 显示的为KB MB GB TB等)

查找100兆以上的大文件

find . -type f -size +1000000k 

========================================================================================

自动使用上次的路径)

cd !$

查看端口

netstat -lntp
netstat -lntp | grep 8080  --查看8080

文件操作

  • 创建文件夹
mkdir aaa
mkdir -p /aaa/bbb 若父级目录不存在,自动创建
创建文件 touch /usr/local/a.txt回车
创建文件:cat>>base.sh(ctrl+d保存并退出编辑) 或 touch abc.txt
  • 重命名
mv abc.txt abc_bak.txt

将abc.txt重命名为abc_bak.txt

  • 复制文件夹
cp -rf base base1

复制base到base1

  • 移动( -f 强制覆盖)
    当前文件夹文件移动到上一层:mv -f * …

  • 删除当前目录下所有文件:rm -rf *
    删除文件夹下的所有文件,并且不提示:rm -rf 文件具体路径
    排除删除:删除当前目录中除了src.zip的所有文件:

find * ! -name src.zip -exec rm -rfv {} \;
连续指令:find * ! -name src.zip -exec rm -rfv {} \;; unzip -o src.zip; rm -rf src.zip;
删除指定:find * |grep -v '\(big\|123.zip\)'| xargs rm -rf
(删除big文件夹,以及123.zip文件,必须要加转移符斜杠/,,()|都需要转义)

移动,复制,删除排除某个文件或目录
复制文件到/data/,排除file1和dir2:cp !(file1|dir2) /data/
移动文件到/data/,排除file1和dir2:mv !(file1|dir2) /data/
删除当前目录下的文件,排除file1和dir2:rm -rf !(file1|dir2) ./

排除移动:
当前目录下有a、b、c、d四个文件,在当前目录下新建new目录,并且将a、b、c三个文件移动到new中
解决方案,参考:https://blog.csdn.net/AnLau/article/details/73205749

mkdir new
find -maxdepth 1 \! -name d \! -name . -exec mv {} new \;
例子:  find -maxdepth 1 \! -name 0324bak \! -name . -exec mv {} 0324bak \;

上传/下载

上传文件:rz
下载文件:sz h5.zip

压缩


将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:

zip -rq html.zip /home/html

-q 不显示指令执行过程。
-r 递归处理,将指定目录下的所有文件和子目录一并处理。

如果在我们在 /home/html 目录下,可以执行以下命令:

zip -rq html.zip *

从压缩文件 cp.zip 中删除文件 a.c

zip -dv cp.zip a.c

解压缩


##在unzip命令后,增加 -o的参数,则不再进行询问,直接覆盖原文件解压缩,节省了很多事儿。

unzip -o file_name.zip

如果要把文件解压到指定的目录下,需要用到-d参数。unzip -d /temp test.zip

例子:unzip -o /webapps/ruepay/boss.war -d /usr/local/ruepay/boss

linux下tar命令解压到指定的目录 :

tar zxvf /bbs.tar.zip -C /zzz/bbs   

//把根目录下的bbs.tar.zip解压到/zzz/bbs下,前提要保证存在/zzz/bbs这个目录

vim操作

1G:跳转到第一行
:set nu : 显示行号
:1,10d : 删除1-10行
删除光标所在行,dd 
 删除光标所在行以下的N行,Ndd 

u 是撤销你刚才做的动作
ctrl+r是恢复你刚才撤销的动作

scp远程拷贝文件夹


跨服务器拷贝需要用到的命令是scp
把当前文件夹tempA拷贝到 目标服务器10.1.1.1 服务器的 /tmp/wang/文件夹下

scp -r /tmp/tempA/ root@10.1.1.1:/tmp/wang/

其中root是目标服务器的用户名,执行命令提示输入密码,然后输入密码即可

scp拷贝文件


把当前文件夹tempA.txt拷贝到 目标服务器10.1.1.1 服务器的 /tmp/wang/文件夹下

scp  /tmp/tempA.txt root@10.1.1.1:/tmp/wang/

其中root是目标服务器的用户名,执行命令提示输入密码,然后输入密码即可

实例1:从远处复制文件到本地目录
命令:

scp   root@10.0.1.1:/usr/local/cloud/cloud-0728.zip   /usr/local/cloud/cloud-0728.zip

批量授权


某个目录下所有文件授权:

chmod -R 777 /scripts/jenkins/

查找替换

/pattern 向后搜索字符串pattern
?pattern 向前搜索字符串pattern
"\c" 忽略大小写
"\C" 大小写敏感
n 下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)
N 上一个匹配(同上)
:%s/old/new/g 搜索整个文件,将所有的old替换为new
:%s/old/new/gc 搜索整个文件,将所有的old替换为new,每次都要你确认是否替换

创建一个软链接

ln –s  /var/www/test   /var/test
  • 修改指向的新路径
ln –snf  /var/www/test1   /var/test
  • 删除软链接
rm –rf test

查看文件大小

stat aaa.txt
du -h aaa.txt             ---直接是人好识别的大小
wc -c nohup.out
ls -lh nohup.out

安装vim


安装命令:

1. rpm -qa | grep vim // 查看vim命令在什么软件包
出现 :vim-minimal-7.4.160-4.el7.x86_64

2. yum install -y vim* // 安装vim相关的软件包
3. rpm -qa | grep vim // 检测是否启用vim-minimal-7.4.629-6.el7.x86_64
出现:
vim-common-7.4.629-6.el7.x86_64
vim-enhanced-7.4.629-6.el7.x86_64
vim-filesystem-7.4.629-6.el7.x86_64
vim-X11-7.4.629-6.el7.x86_64

防火墙


#查看防火墙

service iptables status

#添加映射80端口:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80-j ACCEPT

#重启防火墙

service iptables restart

进程监控 操作关闭和启动

ps -aux|grep mysql

10921

Sl代表正常

暂停:kill -STOP 10921
启动:kill -CONT 10921

vnc

启动vnc服务
vncserver :1
杀死vncserver进程
vncserver -kill :1

批量结束进程

ps -ef|grep check_|awk '{print $2}'|xargs kill -9

ps -ef|grep -E 'lepus|check_'|awk '{print $2}'|xargs kill -9

清理swap


先应该同步一下

[root@mysql172 ~]# sync

再执行

echo 1 > /proc/sys/vm/drop_caches

grep同时搜索多个关键词

ps -ef|grep -E 'AutotestWebD|AutotestFramework'

下载yum依赖包rpm文件

yum install yum-plugin-downloadonly  #先安装下载工具
yum install --downloadonly --downloaddir=/root XXX

注:downloaddir是rpm依赖下载到的路径

  • 离线下载yum依赖
先安装工具:yum install yum-utils
下载依赖,下载到当前目录下:yumdownloader xxx

递归查询文件内容


简单用法:

grep 'XXX'  -r1     (寻找当前目录下包含XXX的文件)
grep -E 'AAA|BBB'  -r1 (满足AAA或BBB)
eg: 查询/tmp/test/目录下,内容包含pro的Dockerfile
grep 'pro'  -r1 /tmp/test/ --include "Dockerfile"

递归查询文件内容,并替换

eg:查询/tmp/test/目录下,内容包含pro的Dockerfile,并把pro改成online
sed -i "s/pro/online/g" grep 'pro'  -rl /tmp/test/ --include "Dockerfile"
#递归查询当前目录下(相对路径),文件内容,并替换
sed -i "s/pro/online/g" grep 'pro'  -rl ./ --include "Dockerfile"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

心猿意码—阿鹏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值