Linux-虚拟机远程交互

【Linux思想:结合小功能,完成复杂功能】

创建和删除操作

  • Touch 修改时间戳 stat (atime mtime ctime),如果没有该文件就创建该文件
  • Rm 删除
    find 【范围】 -file d -name a* [文件属性]
    -exec 命令 {};
    -ok 命令 {};
    | xargs 命令 ;

拷贝和移动文件

  • Cp -a //携带所有文件属性一块复制
  • Mv move 1、移动文件 2、修改文件名称
    mv a b
    mv /tmp/a /root/
  • 文件名扩展:{}
    创建目录 姓名_学号 赵云_00001
    mkdir {张三,李四}_{00001,00002}

查看文件内容

  • Cat 一次性查看文件中所有内容
    cat /etc/init.d/

  • More //man命令
    /
    ?
    q

  • Less 在更多的清下,查看大文件,我们使用less

  • Tail 默认查看倒数10行
    -n // tail -n 20 文件名 简化:-20
    -f 不退出文件,实时查看文件内容

  • Head 查看行首
    -n // head -n 20 文件名 简化:-20

其他

  • Echo -e -n
    echo $PATH
    -n // print(“Hello World”,end=’\t’) print(“Hello World”) 分行打印
    -e 识别 \t \n \r
    echo -n -e “Hello World \t”
  • fd 文件标识符
    0 – 标准输入
    1 – 标准输出
    2 – 错误输出
  • 程序 = 指令 + 数据
  • 规定:默认标准输入为–键盘 标准输出为–显示器,而重定向就是用来改变输入和输出的;

重定向 > 和 >>

  • 输出重定向
    > 覆盖重定向 默认工作中不能使用 set -C 去掉这个功能,同时 >| 可以进行强制重定向(set +C开启覆盖重定向功能)
    >> 追加重定向 在原有的文件上,在添加追加的数据即可;
  • 扩展:
    在Linux中,命令输出除了默认输出结果以外,还返回一个命令执行状态的结果;返回0代表命令执行成功,而返回非0则是失败;$? 存储上一条命名的执行状态结果;
    在工作中,我们往往不需要命令输出的结果,而只需要命令执行的状态,我们就会使用 重定向 将输出结果重定向至 空文件(/dev/null)
    cat a.txt > /dev/null
  • 输入重定向
    < 把后面的文件,交给前面的命令来执行;
    tr 命令,将前面的内容替换为后面的内容
    tr abc ABC < a.txt
    << 将多行内容同时输入,用在 cat 命令中
    cat >>文件 >EOF
  • 错误输出重定向
    2> 需要带上 fd(文件标识符)
    2>> 追加的错误重定向输出
  • 扩展优化:
    cat a.txt > /dev/null
    cat a.txt 2> /dev/null
    &> /dev/null 无论命令执行正确与否,都将输出内容指定到/dev/null
    &>> [普通文件]
  • 管道
    command 1 | comand 2 | command 3 | command 4 | …
    将前面的命令的执行结果,输出给后面一条命名执行;
  • cut 切
    -d 指定分隔符‘ ’
    -f 取的列 1-3 1,3 1

Linux远程

1、查看或配置网卡信息

  • 网卡和IP地址
    ifconfig
    没有该命令,我们需要安装网络包工具(net-tools)
    apt install net-tools

    如果,网卡没有起来,我们需要修改默认的网卡配置文件;
    /etc/network/interfaces
    vim /etc/network/interfaces
    (1)动态 - dhcp
    auto eth0
    iface eth0 inet dhcp
    注意:【修改配置文件,就需要重启服务】
    (2)静态 - 手动去配置
    address 192.168.94.10
    netmask 255.255.255.0
    gateway 192.168.94.1

  • 网卡连接
    Linux-虚拟机远程交互_第1张图片

2、远程管理机制
Ssh 开启Ubuntu的ssh端口的监听功能; tcp-22
netstat -tnl // t – tcp协议 n – 不做解析
如果没有:apt install openssh-server -y
/etc/init.d/ssh start

  • 【Ubuntu默认只能使用普通用户进行远程连接】
    ssh 名字@IP
    centos下,直接使用root用户远程登录即可;
    例如ssh [email protected]

  • 无密码远程登录(见下图)
    Linux-虚拟机远程交互_第2张图片

你可能感兴趣的:(Linux-虚拟机远程交互)