Linux基本命令学习

1.为什么要使用linux ?

2.如何连接到远程服务器?

1.远程连接工具:Xshell
2.远程登录条件:
对方机器:
ip :
查看机器网卡的ip
ifconfig
port :(一般22)
用户名
密码

3.linux概述?

1.操作系统
2.发明:
林纳斯 =》linux内核
=》git
3.版本:
乌班图、小红帽、centos、Debian、。。。
centos =》 win 专业版
4.其他操作系统?
1.win、linux、ios、and、mac、鸿蒙os

部署linux系统:

1.vm 安装
2.linux镜像【centos 7.x】
centos :
6.x
7.x
配置:
/boot ext4 : 1g
分配linux机器启动的时候 需要的空间
swap:
linux 内存 1g =》
把磁盘当做内存来使用 1g
/ : 完整的磁盘空间 ext4 =》 18g

相关命令

1.pwd 查看当前光标所在的目录

[root@gh10 ~]# pwd
/root

2.ls 显示文件夹或者文件

用法:ls [选项]... [文件]...
ls -l 显示文件夹或者文件详细信息
ls -l -a 显示文件夹或者文件详细信息+ 显示隐藏文件 【隐藏文件:.开头的文件】
ls -l => ll
ls -l -h 查看文件大小
[root@gh10 ~]# ls
    zuoshao

3.mkdir 创建文件夹

[root@gh10 ~]# mkdir zuoshao
//并级创建文件夹: 
[root@gh10 ~]# mkdir xuanxuan tiantain haoge
//串级创建文件夹:
[root@gh10 ~]# mkdir -p zuoshao/dir1/dir2/dir3

4.cd 切换目录

[root@gh10 ~]# cd zuoshao/
//目录【路径】:
//相对路径:从当前光标开始的路径
[root@gh10 ~]# cd haoge/
//绝对路径:从根目录开始的路径
[root@gh10 ~]# cd /root/haoge/

如何回到家目录:

1.cd /root
2.cd 回车
3.cd ~

./ => 当前路径
…/ ==》 上一层级目录

cd - 回到上一次操作的目录

5.创建文件:(三种方式)

    1.touch xx.xx 
    2.vim/vi xx.xx 【编辑文件的命令】
        /*退出保存:
            shift+;=》 : + wq  回车*/
    3.echo "zuoshao zhen shuai" >> 3.log 

echo “zuoshao zhen shuai” => 控制台打印
// > 创建或者 覆盖一个文件
// >> 追加到文件

需求:

创建一个空文件?

        1.touch xx.xx
        2.vim/vi xx.xx 【不要用】
        3.cat /dev/null > done 【空文件】    

cat 查看文件所有内容
/dev/null 就是一个空文件

    4.echo "" > done1 【不能创建空文件】

6.vim 编辑文件+ 【文件里面添加内容】

vim 三种模式:
    1.命令行模式
    2.编辑模式
    3.尾行模式
        vim 2.log =》 命令行模式
            i =>进入编辑模式【insert】
                esc 退出保存: 编辑模式 -》 命令行模式
                          shift+;=》: 命令行模式 =》 尾行模式
      尾行模式
    w 保存
    q 退出
    ! 强制

扩展

1.命令行模式:
  1.移动光标:
     行:
        1.光标移动首行 gg **
        2.光标移动尾行 G **
        3.光标移动num行 num+G
    行内移动:
        1.移动行头 shift +^
        2.移动行尾 shift+$
  2.复制
        1.复制光标当前行 yy+p **
        2.复制光标当前行以下num行 y+num+y +p
  3.删除
        1.删除当前光标所在行 dd **
        2.删除当前光标所在行以下num行 d+num+d
        3.删除当前光标以下所有行 dG **
        4.撤回 u
2.尾行模式: shift+; =>:
    1.w 保存
    2.q 退出
    3.! 强制退出
    4./查找的词 n 查找下一个 N 往上找
    5.显示行号 set nu
    6.关闭行号 set nonu
  退出保存: 尾行模式: shift+; =>:
    1.wq
    2.wq!
    3.x
    4.快捷键 shift+zz

需求:

清空一个文件? 【里面没有内容】

1.echo “” > xx.log
2.cat /dev/null > xx.log
3.删除 +touch 【建议不用】

人为编辑一个文件 该如何清空?

gg + dG ***

7.查看文件

  1. cat 查看文件所用内容 打印到控制台 **【文件内容比较少】
    文件内容比较多 =》 vim

  2. more 文件内容一页一页往下翻 按空格 往下翻 q退出 终止进程 ctrl+z ctrl +c

  3. less 文件内容一页一页往下翻 按空格 往下翻 上下箭头 q退出 终止进程 ctrl+z ctrl +c

  4. tail 实时查看文件内容: flume 采集日志【了解】

-f -F的区别

-f 监听某个文件夹,当文件夹被删除后重新创建不会在监听它
-F => -f + retry 监听某个文件夹,当文件夹被删除后重新创建会继续监听它

日志数据:

java app =》 springboot =》 log 【log4j】
qingtian.log 100m
qingtian.log qingtian_1.log
qingtian.log

日志:

qingtian.log 【正在生成的日志】
qingtian_1.log 【写完】
qingtian_2.log
qingtian_3.log
qingtian_4.log
qingtian_5.log
flume :
tail -F qingtian.log

cat
log => 监控app运行情况 =》
error
1.安装app
tail -f log
2.app 运行 报错

思考:

快速定位 error 的位置 【log 1g】

        cat anaconda.log | grep -A  10 error 后10行  
        cat anaconda.log | grep -B  10 error 前10行
        cat anaconda.log | grep -C  10 error 前后各10行

| 管道符 上一个命令的结果作为下一个命令的输入
grep 过滤

cat anaconda.log | grep -C 10 error > error.log [error.log日志文件还是很大]

文件上传下载:

 1.yum install -y lrzsz
    rz上传
    sz xxx 下载
 2.远程连接工具:
    上传 【直接拖】
    下载 【】

linux里面安装软件: 【centos】
1.yum
2.rpm
3.tar

8.mv cp 移动 复制

//mv 移动: 操作的文件始终是 1份
//1.移动
[root@gh10 ~]# mv ./5.log ./zuoshao/
//2.改名字
mv 1.log 1_1.log
//cp 复制:操作的文件始终是 2份
//1.移动
[root@gh10 ~]# cp 4.log ./zuoshao/
//2.改名字
[root@gh10 ~]# cp 4.log 4_1.log

9.rm 删除文件或者文件夹【高危命令】

//1.文件
[root@gh10 ~]# rm 4_1.log
//rm:是否删除普通空文件 "4_1.log"?y
[root@gh10 ~]# rm -f 1_1.log
[root@gh10 ~]# rm -rf .zuoshao
//2.文件夹
[root@gh10 ~]# rm -r zuoshao/
//rm:是否进入目录"zuoshao/"? y
//rm:是否删除普通空文件 "zuoshao/4.log"?y
2.[root@gh10 ~]# rm -r -f haoge/

通用:

rm -rf xxx

rm -rf ./* * 表示所有,注意有点.
[root@gh10 ~]# rm -rf ./*
rm -rf / [千万别写]***********
rm -rf /xxx[也不要写] xxx可能是一个空的 /xxx => /

10.别名 alias

ls -l => ll
[root@gh10 ~]# alias aa="cd /tmp"//等号2边不能有空格
//注意:在当前会话生效 ,在其他会话不生效
[root@gh10 anaconda]# aa
bash: aa: 未找到命令...

环境变量

环境变量:好处=》在任何位置都能用
环境变量:
环境变量文件:
    1.全局环境变量 【所有用户都可以使用】
          /etc/profile
     2.个人环境变量 【个人用户可以使用】
          ~/.bash_rc
          ~/.bash_profile
zuoshao 用户
alias cc="cd /tmp"
配置在个人环境变量:
      ~/.bash_rc

11.history

[root@hxh ~]# history
   cd /etc
   cd etc/sysconfig/network-scripts/
   cd ./sysconfig
   cd ./network-scripts/
   vi ifcfg-ens33 
   su ameng
   cd ~
   cd etc/
   mkdir aa
   cd aa/

注意:
如果你干坏事 history会记录
1.!执行历史操作
[root@gh10 ~]# !176
2.如果你干坏事 history -c 【如果有堡垒机还是会被逮到】

12.用户相关命令

    //用户
    [root@gh10 ~]# ll /usr/sbin/user*
        -rwxr-x---. 1 root root 118192 11月  6 2016 /usr/sbin/useradd 
        -rwxr-x---. 1 root root  80360 11月  6 2016 /usr/sbin/userdel 
        -rwxr-x---. 1 root root 113840 11月  6 2016 /usr/sbin/usermod 
    //用户组
    [root@gh10 ~]# ll /usr/sbin/group*
        -rwxr-x---. 1 root root 65480 11月  6 2016 /usr/sbin/groupadd
        -rwxr-x---. 1 root root 57016 11月  6 2016 /usr/sbin/groupdel
        -rwxr-x---. 1 root root 57064 11月  6 2016 /usr/sbin/groupmems
        -rwxr-x---. 1 root root 76424 11月  6 2016 /usr/sbin/groupmod
//1.用户
    //1.创建用户
     //useradd: 
    [root@gh10 ~]# useradd qs
    [root@gh10 ~]# id qs //查询用户
    uid=1002(qs) gid=1002(qs) 组=1002(qs)

    /*useradd qs: 命令干的事
        1.创建了一个用户 qs
        2.创建了一个用户组 qs 
        3.生成了家目录:/home/qs */
    
    /*2.切换用户 
    su - xx 
    su xx 
    注意: 
        root =》 xx  不需要密码
        xxx =》xxxx   都需要密码*/

    //3.存储用户信息的文件 /etc/passwd
    //2.组 
        //1.添加一个组   
            [root@gh10 ~]# groupadd jjm
        //2.存储用户组信息的文件 /etc/groups

    //修改qs用户组?
        //组:
            //主组 附属组
        //usermod -a -G jjm qs

        //需求: 
            //qs 主组 jjm 附属组 qs jjm 

            [root@gh10 ~]# usermod -g jjm qs
            [root@gh10 ~]# id qs
            uid=1002(qs) gid=1004(jjm) 组=1004(jjm)
            [root@gh10 ~]# usermod -a -G qs qs
            [root@gh10 ~]# id qs
            uid=1002(qs) gid=1004(jjm) 组=1004(jjm),1002(qs)
//3.设置用户密码
    passwd xxx [root]
    //4.普通用户临时具有root用户的权限
    //sudo ls 
        //前提: 配置一个普通用户临时具有root用户的权限 文件
            /etc/sudoers
            [root@gh10 ~]# vim /etc/sudoers
            zuoshao ALL=(ALL)      NOPASSWD: ALL
            [zuoshao@gh10 root]$ sudo ls
            2.log

13.文件权限相关命令

drwxr-xr-x:10个字母

1.第一个字母:
d 文件夹

  • 文件
    l 软连接【快捷方式】

2.权限rwxr-xr-x 755
权限:
r 读权限 4
w 写权限 2
x 执行权限 1

  • 没权限 0
    第一组:rwx 4+2+1=7 代表文件的所属用户的权限
    第二组:r-x 4+0+1=5 代表文件的所属用户组的权限 jjm
    第三组:r-x 5 代表文件的其他用户组的权限
    drwxr-xr-x. 2 root root 4096 3月 18 15:48 app
    755
    -rw-r–r–. 1 root root 10 3月 18 14:50 2.log
    644

3.修改文件权限
文件:
chmod 646 2.log
文件夹:
chmod -R 646 xx
drwxr-xr-x 755
chmod -R 750 data

4.修改文件的所属者
chown

//文件: 
[root@gh10 tmp]# chown zuoshao:zuoshao 1.log
//文件夹:
[root@gh10 tmp]# chown -R zuoshao:zuoshao xx

14.其他

1.查找文件:

find / -name "*zuoshao*"
locate xxx [选择性使用]

2.查看文件大小

ll -h =>只能查看文件大小
du -sh xx => 既可以查看文件夹 也可以查看文件

3.相关的命令

//查看机器内存:free
[zuoshao@gh10 ~]$ free -h
//磁盘:df
[zuoshao@gh10 ~]$ df -h
//top:查看进程 实时进程 top
//load average: 0.00, 0.04, 0.05 负载  =》 10 
//每个进程的 cpu mem

网络:

linux 192.168.10.133
win
1.ping

2.查看某个进程的pid
ps -ef | grep
java app =》 jps =》pid
启动

[zuoshao@gh10 ~]\$ service httpd start

httpd =》 有哪些进程

 1.查看进程的pid
      ps -ef | grep httpd
  2.杀死 进程
      service httpd stop 【优雅】
      kill -9 pid
   3.按照app名字进行杀进程
      kill -9 $(pgrep -f http)

netstat =>pid =>port

linux网络配置:

1.为什么要进行网络配置?

    1.ifconfig =》 查看不了ip  (无法远程登录)
    2.ip会变掉=》动态ip =》静态ip

    systemctl restart network =》 重启网络配置

配置ip:

1.linux ip 
	1.vim /etc/sysconfig/network-scripts/ifcfg-ens33

	修改:
		BOOTPROTO=static
		ONBOOT=yes
		IPADDR=192.168.10.10  //linux ip
		GATEWAY=192.168.10.2  // => vm 
		DNS1=192.168.10.2

2.vm ip 
	1.ip 
		192.168.10.0
	2.网关	
		192.168.10.2

3.重启linux
	reboot 重启
	shutdown 关机
gh03 :
1. linux ip  => 静态ip 
2. vm ip :
	vm ip 
	1.ip 
		192.168.10.0
	2.网关	
		192.168.10.2
3.测试是否成功: 
	linux =》 192.168.10.3
克隆机器:
    1.机器名
	     vim /etc/hostname 
    2.ip
	    vim /etc/sysconfig/network-scripts/ifcfg-ens33
    3.验证: 
	    远程连接
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值