Linux命令集合

摘要:
@# ssh-p22222cbi@10.122.1.1“Ps ef|grep$1|grep vgrep”#注意密码:cbi@123 !

批量改名文件

for var in `ls *.bak`;do mv -f "$var" `echo "$var"|sed 's/....$//'`;done     //将去除文件名字后面的 .bak
for var in `ls *.bak`;do mv -f "$var" `echo "$var"|sed 's/...$/xxx/'`;done  //将文件名字最后的三个字符改为 xxx

 查找/etc目录下大于1M的文件,并将其文件名写入/tmp/etc.largefiles文件中;

find /etc -size +1M -exec echo {} >> /tmp/etc.largefiles ;
find /etc -size +1M >> /tmp/etc.largefiles

删除类型不是目录,而且没有属主的文件;

find / -not -type d -a -nouser -exec rm -f {} ;
find / -not -type d -a -nouser | xargs -i rm -f {}

 使用scp命令复制另外一台的文件到当前目录下面

scp -rp root@192.168.137.16:/root/.   ./      #注意/root/. root后面的 . 要加上,它复制的是这个目录下面的所有文件包含隐藏文件,否则不成功

 复制目录排除目录里面的某个文件夹或者文件,注意:--exclude后面必须是相对路径,使用绝对路径不行

rsync -av --exclude yum.log --exclude ks-script-rTogPV /tmp/ /tmp-li/

 ssh的免密登陆,说明:很多公司是禁止root直接登陆的,因此设置了root的免密登陆,会提示权限拒绝,

免密登陆的原理就是:将a服务器生成的后缀为.pub的文件内容复制到 b服务器的家目录下面的.ssh下面的 authorized_keys文件里面,并且权限为600,a就可以免密访问b服务器

ssh-keygen -t rsa  #一路回车
ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.137.3 #这个是单向的
ssh-copy-id -i /root/.ssh/id_rsa.pub cdp@192.168.137.3 #设置一个从root无密码使用cdp用户登陆到其他服务器,其他服务器上面的cdp 要执行 ssh-keygen -t rsa

 远程使用sudo方式不切换root,执行root的命令

sudo -i -u root -- sh -c  "ls;echo "------------";whoami"
sudo -i -u root -- sh -c "cp /home/li/*.jar /tmp/jenkins-linshi/ ;bash /tmp/jenkins-linshi/test.sh"

 sshpass远程登陆并带入密码,执行命令,-p后面接密码,特殊符号要使用

/usr/local/sshpass/bin/sshpass -p cbi@123!@# ssh  -p 22222 cbi@10.122.1.1 "ps -ef|grep $1|grep -v grep"   #注意密码:cbi@123!@#

 链接一个文件到一个目录:使用软链接

ln  -s  目录   文件
例如:

[root@mylinux test]# ln -s muli hhh
[root@mylinux test]# ll
总用量 12
lrwxrwxrwx  1 root root  4 11月 23 10:47 hhh -> muli
drwxr-xr-x  2 root root 19 11月 23 10:46 muli

[root@mylinux test]# ll hhh
lrwxrwxrwx 1 root root 4 11月 23 10:47 hhh -> muli
[root@mylinux test]# ls hhh
1.txt

 linux系统上面通过其他代理主机下载东西

使用网络下载时的代理,指定搭建的代理服务器
    export http_proxy=http://ip:3128 && export https_proxy=https://ip:3128 && export ftp_proxy=ftp://ip:3128 

 tree命令排除某些文件或者目录

tree -I '201401|201404' 目录 排除某些名字是201401或者201404的目录或者文件

date设置时间的命令

date 月日小时分钟年.秒

find命令排除某个目录

find / -path "/data" -prune -o -name "*.log" -print

linux备份30天之前的文件

  1  find ./ -ctime +30 >bak.txt    -->将文件帅选出来
  2  tar -T bak.txt zcpf beifen.tar.gz

————————————————————sh-----------------

sh -n  检查语法错误,但不执行
sh -x  进入跟踪方式,显示所执行的每一条命令的执行结果

 linux如何注释一大段

if false;then
....
....
.....
fi

 linu语法比较大小

if [ 1207713600 -gt 1207810800 ];then echo "a>b";else echo "a<b";fi

if [[ 1207713600 > 1207810800 ]];then echo "a>b";else echo "a<b";fi

下面是错误写法:
if [ 1207713600 > 1207810800 ];then echo "a>b";else echo "a<b";fi

找出两个文件中相同的行

grep -Ff a.txt b.txt      或者 awk 'FNR==NR{a[$0]=1;next}(a[$0]==1)' a.txt b.txt

 找出文件不同的行,例如下面找出文件test3文件里面的行不在test1文件的行内容

grep -vFf t1.txt t3.txt  #没有输出则t3的内容都在t1文件里面  或者  awk 'FNR==NR{a[$0]=1;next}(a[$0]!=1)' t1.txt t3.txt

在远程执行命令,并在本地回显

ssh root@ip  'bash -x -s' </data/sh/auto_deploy_script.sh

 删除文件或者目录,只留下想要的文件或者目录

只留下 3.txt 7.txt m1 m4 其他统统删除
[root@localhost test]# touch {1,2,3,4,5,6,7}.txt [root@localhost test]# ls 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt [root@localhost test]# mkdir m{1,2,3,4} [root@localhost test]# ls 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt m1 m2 m3 m4 [root@localhost test]# ls m1 [root@localhost test]# rm -rf `ls | egrep -v '(3.txt|7.txt|m1|m4)'` [root@localhost test]# ls 3.txt 7.txt m1 m4

 Linux查看时区

[root@localhost backup]# timedatectl
      Local time: 三 2019-08-28 01:10:43 CST
  Universal time: 二 2019-08-27 17:10:43 UTC
        RTC time: 二 2019-08-27 17:10:43
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: yes
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a
[root@localhost backup]# timedatectl|grep "Time zone"
       Time zone: Asia/Shanghai (CST, +0800)
[root@localhost backup]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 
[root@localhost backup]# 

[root@localhost backup]# date +"%Z %z"
CST +0800

 mvn -P tst的解释:mvn clean package -P tst -Dversion=201907

mvn编译的时候往往会有-P选项,它是根据配置文件pom.xml来的
-P 环境变量
例如:pom.xml下面部分profiles里面的内容
        <profile>
            <id>tst</id>
            <properties>
                <profileActive>tst</profileActive>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>prd</id>
            <properties>
                <profileActive>prd</profileActive>
            </properties>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
        </profile>

 将以空格隔开的字符串各字段进行排序

echo $union|sed 's/ /
/g'|sort

 linux查看磁盘是否是ssd盘

lsscsi  #命令回车后查看第四栏,ssd的就是ssd

[abc@hhh config]# lsblk -d -o name,rota
NAME ROTA
sdc     1
sdb     1
sdd     1
sdf     1
sdh     1
sdi     1
sdg     1
sde     1
sda     1
sdj     1
sdk     1
sdl     1
sdm     1
sdn     1
sdo     1
sdp     1
sdq     1
sdr     1

上面结果为1的就是机械盘,为0 为固态,rota表示可以旋转

 ntpdate同步问题:

    记centos7使用ntpdate同步时间出现的问题
        24 Apr 09:41:56 ntpdate[2873]: no server suitable for synchronization found
        当时的解决方法:
            先ntpdate -d cn.pool.ntp.org
            后ntpdate cn.pool.ntp.org

iptraf-ng

yum -y install iptraf-ng

iptraf是一个基于ncurses开发的IP局域网监控工具,它可以实时地监视网卡流量,可以生成各种网络统计数据,

包括TCP信息、UDP统计、ICMP和OSPF信息、以太网负载信息、节点统计、IP校验和错误和其它一些信息。

 nload:查看网卡的进出流量

yum  -y install  nload

nload ens33 #查看指定的网卡

Linux命令集合第1张

免责声明:文章转载自《Linux命令集合》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇交换分区,进程,rpm&amp;amp;yumc#中dynamic ExpandoObject的用法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

如何在Debian 10上安装NVM

NVM是Node.js编程语言的命令行版本管理器。借助nvm实用程序,您可以在一台计算机上安装多个node.js版本。您也可以为应用程序选择特定的节点版本。它还提供了使用.nvmrc配置文件自动选择节点版本的选项。本教程将帮助您在Debian 10 Linux系统上安装nvm。它还将帮助您安装不同的Node版本和其他有用的示例。先决条件运行中的具有shel...

linux同步windows的时间

找了很多的资料,都没有windows做时间服务,linux同步windows的时间的,最后自己找了一些软件,终于搞定了,写出来给大家共享,以免大家多走弯路   首先在http://www.meinberg.de/english/sw/index.htm   下载了一个windows的NTP服务程序:ntp4171.zip   windows 192.168...

linux mysql 查看默认端口号和修改端口号

如何查看mysql默认端口号和修改端口号2015-03-1917:42:18 1.登录mysql [root@test/]#mysql-uroot-p Enterpassword: 2.使用命令showglobalvariableslike'port';查看端口号 mysql>showglobalvariableslike'port'...

Ubuntu下制作系统启动盘

制作系统U盘: $ sudo umount /dev/sdc1 $ sudo dd if=/home/abby/software/ubuntu-16.04.3-desktop-amd64.iso of=/dev/sdc 3100800+0 records in 3100800+0records out 1587609600 bytes (1.6...

Linux中VSFTP的配置

配置VSFTP服务器: 1.安装VSFTP,可以参考Linux 中yum的配置来安装: yum installvsftpd.x86_64 -y 2.修改SELinux: setenforce 0 查看: 3.防火墙开放ftp服务 firewall-cmd --permanent --add-service=ftp 重启防火墙: firewall-cmd...

buildroot 制作Linux文件系统初级使用教程

buildroot 下载地址:https://buildroot.org/download.html 放在Linux文件下解压出来。 使用make menuconfig 进行配置相关的东西。 在使用这条命令之前,首先要安装相关的东西。 运行如下命令进行安装相关的库文件,我的是在Ubuntu14.04的环境下进行的。 sudo apt-get install...