• 一 、linux基础命令


    用户登录

    • root用户

      • 是一个特殊的管理账号,也可以成为超级管理员

      • root用户对系统有完全控制的权限

      • 对系统的损害会无限大

      • 在工作中,如果没有特殊的必要,尽量不要使用root

    • 普通用户

      • 权限有限

      • 对系统的损害会小

    终端

    分类

    • 设备终端

    • 物理终端

    • 虚拟终端 ctrl+alt+f[1-6] /dev/tty#

    • 图形终端 /dev/tty7

    • 串行终端

    • 伪终端 通过ssh远程连接的 /dev/pts/#

    • 查看终端的命令 tty

    • 查看ip地址的命令 ip addr

    交互式接口

    启动终端以后,在终端设备上附加的一个应用程序

    • GUI(桌面)

    • CLI command line

      • powershell

      • sh

      • bash(linux,mac默认的程序)

      • zsh

      • csh

      • tcsh

    bash

    bash是linux系统的用户界面,提供了用户和操作系统之间的交互,它接收用户的输入,让它送给操作系统执行

    • 目前是linux和mac上默认的shell

    • centos默认使用

    • 显示系统当前使用的shell echo $SHELL

    • 查看系统内可以使用的shell cat /etc/shells

    • ctrl +d 快速终止当前的连接

    • 切换shell chsh -s shell

     

    修改ssh连接慢的步骤

    echo "UseDNS no" >> /etc/ssh/sshd_config
    systemctl restart sshd

    命令提示符

    [root@localhost ~]#  
      管理员是# 普通用户时$

    显示提示符格式

    [root@localhost ~]# echo $PS1
    [u@h W]$
    u 代表当前登录的用户
    h 代表当前主机的主机名
    W 代表当前的目录
    0表示默认字体,1表示加粗,4在字体下方加下划线 5 闪烁 7 代表突出显示
    31-37 字体颜色
    40-47 表示背景颜色
    echo 'PS1="[e[1;35mm][u@h W]\$[e[0m]"' >> /etc/profile.d/ps.sh #永久生效

    命令

    执行命令: 输入命令回车

    内部命令:shell 自带的命令

    • help 显示所有的内部命令

    外部命令:第三方提供的命令

    查看命令的类型: type

    [root@localhost ~]#type echo
      echo is a shell builtin

    [root@localhost ~]#type top
      top is /usr/bin/top

    别名

    • 查看当前所有的别名 alias

    • 自定别名 alias cdetc='cd /etc'

    • 取消别名 unalias cdetc

    • 设置别名只对当前的终端有效

    • 设置所有用户都可以用 /etc/bashrc

      • 写入配置文件 echo "alias cdetc='cd /etc'= 'cd /etc'" >> /etc/bashrc

    • 只对当前用户有效 ~/.bashrc

      • 写入配置文件 echo "alias cdetc='cd /etc'= 'cd /etc'" >> ~/.bashrc

    • 执行本身命令

      • command

      • "command"

      • 'command'

      • path

        • 查看命令位置 which ls

    命令格式

    command [options.....] [args...]

    command 命令本身

    options:启动或者关闭命令里面的某些功能

    • 长选项:--help --color

    • 短选项: -i -l

    args:命令的作用体,一般情况下是目录或者文件,用户名等等

    注意:

    • 短选项是可以合并

    • 空格隔开

    • ctrl+c 结束命令的执行

    • 在同一行执行多个命令用;隔开

    • 一个命令可以在多行显示用连接

    获取命令的帮助信息

    内部命令:

    • help command

    • man bash

    外部命令:

    • command -h 短选项

    • command --help 长选项

    • man command

    • 官方文档

    [root@localhost ~]#python --help
    usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
    [] 可选项
    <> 表示变化的数据
    ... 表示列表
    a|b|c 或者
    -abc 表示-a -b -c
    {} 表示分组

    man

     1   Executable programs or shell commands  #用户命令
    2   System calls (functions provided by the kernel) # 系统调用
    3   Library calls (functions within program libraries) # 库的调用
    4   Special files (usually found in /dev) #设备文件与特殊文件
    5   File formats and conventions eg /etc/passwd # 配置文件格式
    6   Games #游戏
    7   Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) # 杂项
    8   System administration commands (usually only for root) # 管理类的命令
    9   Kernel routines [Non standard] # 内核的API
    退出q
    翻屏 空格
    翻行 回车
    man 章节 passwd

    bash 快捷键

    • ctrl+l 清屏 相当于clear

    • ctrl+o 执行当前的命令,并显示当前的命令

    • ctrl+s 锁屏

    • ctrl+q 解锁

    • ctrl+c 终止命令

    • ctrl+z 挂起命令

    • ctrl+a 光标移动到行首,相当于Home

    • ctrl+e 光标移动到行位,相当于End

    • ctrl+xx 在开头和当前光标所在位置跳转

    • ctrl+k 删除光标后的文字

    • ctrl+u 删除光标前的文字

    • alt+r 删除正行

    tab 键

    • 命令补全

      • 内部命令

      • 外部命令:根据环境变量定义的路径,从前往后依次查找,自动匹配第一个查找到的内容

      • 如果用户给的命令只有唯一一个匹配,则直接补全

      • 如果有多个匹配,则需要在按tab键将所有匹配到的结果展示出来

    • 目录补全

      • 把用户给定的字符作为文件的开头,如果有唯一一个匹配则直接补全

      • 如果有多个匹配,则需要再次按tab键把所有的匹配到的结果展示出来

    引号

    [root@localhost ~]#name=alexdsb

    [root@localhost ~]#echo "$name"
      alexdsb
    [root@localhost ~]#echo '$name'
      $name

    [root@localhost ~]#echo "wo shi `tty`"
      wo shi /dev/pts/2

    [root@localhost ~]#tty
      /dev/pts/2

    [root@localhost ~]#echo "wo shi $(tty)"
      wo shi /dev/pts/2

    命令历史

    • 可以使用上下箭头来查找之前执行过的命令

    • 存放文件是~/.bash_history

    • 执行的命令是history

    • 执行上一条命令

      • 上箭头

      • !!

      • !-1

      • ctrl+p 回车

    • 调用上一条命令的最后一个值 esc .

    • !# 指定第多少条命令

    • !-# 指定倒数第#条命令

    • !string 用来最近一次匹配到的命令(从下往上)(带srting的命令)

    • ctrl+r 搜索命令

    • ctrl+g 取消搜索

    • history # 显示最后#条命令

    命令展开

    touch file{1..20}
    file1 file2 ..... file20

    echo file{1..20..2}
    从0开始到20 间隔2 file0 file2 ...file20

    seq 1 10
    1 2 3...10

    seq 0 2 10
    0 2 4...10

    echo 回显

    echo -e 'dadasda
    dasdasd'
      d
    adasda
      dadasda
    echo -e 'a' #播放声音

    查看用户登录信息

    [root@localhost ~]#whoami # 显示当前的登录用户
      root

    [root@localhost ~]#who am i #显示当前登录用户的详细信息
      root     pts/2        2019-08-22 15:54 (192.168.21.1)

    [root@localhost ~]#w 显示所有的用户并显示执行的命令
      16:27:54 up  5:19,  9 users, load average: 0.00, 0.01, 0.05
      USER     TTY     FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
      root     tty2                      11:37    4:48m  0.02s  0.02s -bash
      wu       tty3                      11:39    4:48m  0.02s  0.02s -bash
      root     :0       :0               11:30   ?xdm?   1:28   0.36s /usr/libexec/gnome-session-binary --session gnome-classi
      root     pts/0   :0               11:35    4:43m  0.03s  0.03s bash
      root     pts/1    192.168.21.1     12:11    4:03m  0.02s  0.02s -bash
      root     pts/2    192.168.21.1     15:54    2.00s  0.18s  0.03s w
      wu       pts/3    192.168.21.1     12:27    2:26   0.05s  0.05s -bash

    date

    [root@localhost ~]#date  显示当前的时间
      Thu Aug 22 16:30:06 CST 2019
      Usage: date [OPTION]... [+FORMAT]
      or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

    [root@localhost ~]#date 010923102018 #修改时间
      Tue Jan  9 23:10:00 CST 2018

    [root@localhost ~]#date
      Tue Jan  9 23:10:18 CST 2018

    [root@localhost ~]#ntpdate time.windows.com #同步网络服务器时间
      unix元年 1970-01-01

    [root@localhost ~]#date
      Thu Aug 22 16:35:44 CST 2019

    [root@localhost ~]#date
      Thu Aug 22 16:35:47 CST 2019

    [root@localhost ~]#date
      Thu Aug 22 16:35:48 CST 2019

    [root@localhost ~]#date +%a
      Thu   星期

    [root@localhost ~]#date +%A
      Thursday 全写星期

    [root@localhost ~]#date +%F
      2019-08-22      年月日
      
    [root@localhost ~]#date +%H
      16      16时
          
    [root@localhost ~]#date +%I
      04     4点

    [root@localhost ~]#date +%m
      08 月
    [root@localhost ~]#date +%d
      22 日
    [root@localhost ~]#date +%M
      38 分钟

    [root@localhost ~]#date +%h
      Aug   月

    [root@localhost ~]#date +%c
      Thu 22 Aug 2019 04:38:42 PM CST

    [root@localhost ~]#date +%T
      16:39:01

    [root@localhost ~]#date +%y
      19 19年

    [root@localhost ~]#date +%Y
    2019      2019年

    [root@localhost ~]#date +%Y/m/%d
    2019/m/22     自定义格式

    [root@localhost ~]#date +%Y/%m/%d
    2019/08/22        

    [root@localhost ~]#date +%s
    1566463197      时间戳 1970-1-1 开始 unxi元年

    [root@localhost ~]#date +%W
    33        今年开始已经过了33周 (一年52周)

    显示时区

    [root@localhost ~]#timedatectl     
        Local time: Thu 2019-08-22 16:42:43 CST
    Universal time: Thu 2019-08-22 08:42:43 UTC
          RTC time: Thu 2019-08-22 08:42:43
          Time zone: Asia/Shanghai (CST, +0800)
        NTP enabled: no
    NTP synchronized: no
    RTC in local TZ: no
        DST active: n/a

    设置时区
    [root@localhost ~]#timedatectl set-timezone 然后Y 显示所有时区
    [root@localhost ~]#timedatectl set-timezone Asia/Tokyo   设置东京时间


    日历

      cal      当前日历

      cal -y     一年的日历

      cal #     显示#年的日历

     

    关机和重启

      • shutdown   默认1分钟之后关机

      • shutdown -c   取消关机

      • shutdow -r   重启

      •  

        •     TIME 

          •     now 立即

          •     +n n分钟之后

          •     hh:mm 指定时间

    • 关机命令

      • poweroff

      • halt

      • init 0

    • 重启

      • reboot

        • -f  强制

        • -p  关机

      • init 6

  • 相关阅读:
    10个最常见的 HTML5 面试题及答案
    YII 的源码分析(-)
    架构师速成5.2-如何掌握综合性技能 分类: 架构师速成 2015-06-30 11:18 405人阅读 评论(0) 收藏
    架构师速成5.1-小学gtd进阶 分类: 架构师速成 2015-06-26 21:17 313人阅读 评论(0) 收藏
    架构师速成4.3-幼儿园要学会查找资料 分类: 架构师速成 2015-06-25 09:08 409人阅读 评论(0) 收藏
    架构师速成4.2-幼儿园要学会如何高效学习 分类: 架构师速成 2015-06-24 09:10 409人阅读 评论(2) 收藏
    架构师速成4.1-幼儿园要学会如何学习(转载自36氪) 分类: 架构师速成 2015-06-24 09:05 114人阅读 评论(0) 收藏
    架构师速成-目录 分类: 架构师速成 2015-06-21 20:48 146人阅读 评论(0) 收藏
    架构师速成7-高中 分类: 架构师速成 2015-06-21 19:17 132人阅读 评论(0) 收藏
    架构师速成6-初中 分类: 架构师速成 2015-06-20 12:08 149人阅读 评论(0) 收藏
  • 原文地址:https://www.cnblogs.com/zhuangdd/p/14248864.html
Copyright © 2020-2023  润新知