scp,ssh, tar,hostname,grep,yum等命

作者: 沐兮_d64c | 来源:发表于2017-05-07 21:56 被阅读47次

    1,文件相关。

    1)创建/删除 多级目录

    创建多级目录,mkdir -p test/temp
    递归强制删除,rm -rf test

    2)复制 目录/文件

    递归复制目录,cp -r ~/test/ ./test
    复制文件,cp /var/a.txt ./

    1. 移动 文件/目录

    移动目录 mv /var/data test/data1(移动data目录, 并重命名data目录为data1)
    重命名目录 mv a newa
    移动文件 mv /var/a.txt ~/
    重命名文件 mv /var/a.txt ~/newa.txt

    cd - 进入上次操作的目录。

    5)文件压缩与解压

    1,.tar文件。
    -c: 建立压缩档案 -x:解压 -v:显示所有过程 -z:有gzip属性的 -f: 最后一个参数,后面只能接档案名。
    `使用tar命令打出来的包,成为tar包,生成tar包后,可以使用其他程序进行压缩。
    1)tar包
    tar -cvf sh.tar *.sh,打包当前目录下的所有.sh文件至sh.tar
    解压tar包。tar -xvf sh.tar
    2)tar调用gzip
    tar -xcvf sh.tar.gz *.sh 打包当前目录下的所有.sh文件至sh.tar并调用gzip进行压缩
    解压.gz包。tar -zxvf sh.tar.gz

    1. .zip包
      zip sh.zip *.sh
      解压zip包。unzip sh.zip
      4).gz包
      源文件a.tar
      gzip a.tar -----> a.tar.gz
      解压gunzip a.tar.gz --->a.tar`

    2,登录相关

    添加新用户
    useradd zhanqi
    passwd zhanqi
    新用户加入 /etc/sudoers中。zhanqi ALL=(ALL) NOPASSWD: ALL
    1)ssh 登录
    ssh 用户名@ip -p 端口号
    ssh zhanqi@192.168.0.62 -p 22(如果使用默认端口,可不填-p参数)
    2)更改ssh登录端口。
    vim /etc/ssh/sshd_config
    Esc -- > 输入 / --> 输入Port(n ,下一个)--> 更改端口号。(如果是阿里云机器, 需要增加安全组)
    vim /etc/ssh/sshd_config
    ClientAliveCountMax 6 //最大的超时次数
    ClientAliveInterval 600 //每隔600s检查一次客户端状态
    systemctl restart sshd
    3)配置ssh免密登录。
    (本地)ssh-keygen -t rsa 生成一对密钥
    (服务器)useradd premha 添加一个用户
    在用户目录下的.ssh内,vim authorized_keys
    将本地的公钥加入 authorized_keys中。
    chown -R premha:premha /home/premha 目录权限
    chmod 600 id_rsa必须600

    chmod 600 authorized_keys必须600
    将用户premha加入sudoer中,或者 加入其他admin分组
    usermod -a -G admin premha

    sudo su 使当前用户拥有root身份,shell环境变量使用自己的,进入用户目录。可以source xxx是root的环境变量生效。
    sudo su - 使当前用户拥有root身份,shell环境变量使用root用户的,进入root目录。

    5)修改主机名

    centos7 vim /etc/hostname
    修改三种状态的主机名:hostnamectl set-hostname web001
    修改本地域名解析:vim /etc/hosts

    3,文件传输相关。

    1)scp上传文件、目录

    scp上传文件。scp -P 端口 /var/ROOT.war zhanqi@ip:/home/zhanqi
    scp上传目录。scp -r -P 端口 /var/temp zhanqi@ip:/home/zhanqi

    2)scp下载文件、目录

    scp下载文件。scp -P 端口 zhanqi@ip:/home/zhanqi a.csv ./
    scp下载目录。scp -r -P端口 zhanqi@ip:/home/zhanqi/data ./data

    4,mysql导出数据到csv

    1)mysql -h xxx -uroot -p databaseName < input.sql > output.csv
    2)使用scp下载CSV到本地。

    5,grep命令

    grep -Ev '#|^$' filename 排除空行和注释行
    eg: cat -n /usr/local/tomcat/xxx.out | grep "msg" | head -1(tail -1), 取匹配到的第一或者最后一条。
    grep ' "jz ' select.sql > new.sql 过滤文件,重定向到另一个文件
    grep -v ' "jz ' select.sql > new.sql 过滤不包含字符串的文件,重定向到另一个文件
    grep -A 5 可以显示匹配内容以及后面的5行内容
    grep -B 5 可以显示匹配内容以及前面的5行内容
    grep -C 5 可以显示匹配内容以及前后面的5行内容
    grep $'\t'23$'\t' a.csv 匹配2017-09-01 00:00:00 23 0的行
    grep -v '^$' filename 排除空行

    6,yum

    1)yum(Yellow dog Update, Modified)是一个软件包管理器,为了解决linux系统上的依赖关系而存在的。
    2)yum源是一个目录,yum从指定目录自动下载rpm包并安装,能够很好的解决依赖关系。如http://nginx.org/packages/centos/7/x86_64

    image.png 两个目录,一个包含rpm包 image.png
    ,一个包含yum的索引文件,包含rpm包的信息,用于解决依赖关系。(服务器存放了所有的rpm软件包,以及清单文件,yum下载分析清单文件,并且一次性将所有的依赖rpm包下载下来)

    3)执行yum时,只会读取/etc/yum.repos.d下的所有.repo文件。

    image.png CentOS-Base-Aliyun.repo源中包含Base和Extra的程序包(使用yum安装基础的软件包);epel-Aliyun.repo源中包含EPEL (Extra Packages for Enterprise Linux)为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.(使用yum来安装额外的软件包)
    4)yum命令
    yum list all ##列出所有安转包
    yum list installed ###列出已经安装的
    yum list available ###列出没有安装的
    yum remove software ###卸载软件
    yum install software ###安装软件
    yum search 关键字 ###搜索与关键字相关的软件
    yum whatprovides 文件 ###搜索包含此文件的包
    yum reinstall software ###从新安装软件
    yum localinstall 第三方软件 ##安装该软件并解决依赖关系
    yum info software ###查询软件信息
    yum groups list ###列出软件组
    yum groups install ###安装组
    yum groups remove ###卸载组
    yum groups info ###查看组信息
    yum repolist all ##列出仓库列表
    5)yum下的一些变量值。
    $basearch == arch命令机器CPU类型(eg:x86_64)
    $releasever == rpm -qi centos-release当前系统的发行版本 (Version : 7)
    6)rpm命令。
    当我们要安装的软件在官方镜像中没有时,我们需要下载rpm包,使用rpm(软件管理工具)来安装,如果有依赖,则一个个下载安装。man rpm

    相关文章

      网友评论

      • hellowenqi:复制目录和文件其实是一个东西,需要注意的是后面的斜杠。
        cp -r ./origDir ./desDir // 将origDir 复制并重命名为desDir, 结果为 ./desDir
        cp -r ./origDir ./desDir/ // 注意desDir后面有斜杠,结果为 ./desDir/origDir
        cp -r ./origDir/ ./desDir/ // 与第一种相同。

      本文标题:scp,ssh, tar,hostname,grep,yum等命

      本文链接:https://www.haomeiwen.com/subject/wqgstxtx.html