zoukankan      html  css  js  c++  java
  • Linux的xshell命令

    1,Linux基本命令行的组成结构

    2,Linux系统命令操作格式

    命令 空格 参数 空格 需要处理的内容
    rm   -rf   /tmp/*
    ls   -la   /home
    1. 一般情况下(参数)是可选的,一些情况下(文件的路径)也是可选的
    2. 参数 > 同一个命令,跟上不同的参数执行不同的功能,执行Linux命令,添加参数的目的是让命令更加贴近实际工作的需要,Linux命令,参数之间,普遍应该用一个 或多个空格分割

    3,创建一个目录/xuexue

    • mkdir xuexue    在root目录下创建xuexue文件夹
    • mkdir /xuexue   在根目录下创建xuexue文件夹
    • mkdir -p a/b c/d    递归创建文件夹
    • mkdir test{a,b,c,d}         递归创建四个目录
    • mkdir -p a/b/c/d/               递归创建文件夹

    4,创建文件或者修改文件时间戳(文件属性)

    • 修改文件的更改时间,很多黑客就会在恶意修改文件之后再修改之前的时间
    • ls -l  查看所有文件夹
    • echo "xuexue" >> python.py    表示把xuexue这个字符串写到python.py中

    5,stat命令(显示文件或文件系统的状态):

    • 用法: stat   [参数]   文件
    • 参数列表:
      • -L,  --dereference   跟随连接
      • -f.   --file-system     显示文件系统状态而非文件状态
      • -c   --format-格式    使用指定输出格式代替默认值,每用一次指定格式换一新行
      • --printf=格式             类似 --format,但是会解释反斜杠转义符,不使用换行作输出结尾,如果您仍希望 使用换行,可以在格式中加入" "
      •  -t,  --terse       使用简洁格式输出
        • --help       显示此帮助信息并退出
        • --version   显示版本信息并退出
    • 格式化输出参数:
      • %a     八进制权限
      • %A     用可读性较好的方式输出权限

    • 显示文件的权限
    • stat -c %a python.py
    • stat -c %A python.py

    6,vim:所有的Unix Like系统都会内建vi编辑器,其他的文书编辑器则不一定会存在

    但是目前我们使用比较多的是vim编辑器

    vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,更方便程序的设计

    • vi vim:使用vi打开python.py默认是命令模式,需要输入a/i进入编辑模式,然后输入文本"Life is short,i use python"
    • 按下esc键,回到命令模式
    • 输入:wq!, 强制保存退出
    • w write 写入
    • q quit 退出
    • ! 强制
    • 或者:x 保存退出
    • :q 不保存退出
    • :q!  不保存强制退出

    7,查看文件内容:cat命令用于查看纯文本内容(常用于内容比较少)

    • cat -n python.py    查看文件显示行号
    • cat python.py  直接查看文件内容
    • 在每一行的结尾加上$符

    • cat -E python.py
    • 追加文字到文件中

    • cat >> python.py << EOF
    • 世情薄,人情恶,雨送黄昏花易落,
    • 晓风干,泪痕残,欲笺心事,独语斜阑,
    • 难,难,难! 
    • EOF

    8,more命令

    1. more命令用于查看内容较多的文本,列如要看一个很长的配置文件,cat查看内容屏幕会快速翻滚到结尾
    2. more命令查看文本会以百分比形式告知已经看到多少,使用回车键向下读取内容
    • more/etc/passwd
    • 按下空格键space是翻页
    • 按下b键上一页
    • 回车键向下读取内容

    9,Linux的快捷键

    1. tab键, 用于自动补全命令/文件名/目录名
    2. ctrl + l: 清理终端显示
    3. clear/cls:清理终端显示
    4. ctrl +c: 终止当前操作

    10,echo命令:

    • echo命令用于在终端输出字符串或变量提取后的值,格式"echo[字符串|$变量]"
    • # 默认把内容显示到终端
    • echo "帅爆太阳的男人",
    • echo "帅爆太阳的男人" > python.py

    11,特殊符号

    • 输入输出,重新定向
    1.  >> 追加重定向, 把文字追加到文件的结尾
    2. > 重新定向符号,清空原文件所有内容,然后把文字覆盖到文件末尾
    3. < 输入重定向
    4. << 将输入结果输入重定向 
    5. eg:<< 和>> 一起用:如下
    6. 通配符: ls -l /etc/us*

    12,赋值(拷贝的命令)

    • cp xxx.py /tmp目录下
    • 移动xxx.py文件到/tmp目录下
    • cp xxx.py /tmp/yyy.py
    • 移动xxx.py目录,并重命名xxx.py为yyy.py
    • Linux下面很多命令,一般没有办法直接出处理文件夹,因此需要加上参数
    • cp -r 递归,复制目录以及目录的子孙后代
    • cp -p复制文件,同时保持文件属性不变, 可以用stat
    • cp -a相当于 -pdr
    • cp -r test test2
    • 操作命令前,先cp复制一份
    • cp main.py main.py.bak

    13,移动命令

    • mv /home

    14,删除命令

    • 删除/ --->remove/  ---->rm
    • 参数:  -i   需要删除确认
    • 参数:  -f   强制删除
    • 参数:  -r   递归删除目录和内容

    15,查找命令

    格式:find  在哪里(目录)   什么类型(文件类型)   叫什么名字(文件名)

    • 参数: -name 按照文件名查找文件    -type查找某一类文件列如
      • b -块级设备文件
      • d -目录
      • c -字符串设备名称
      • p -管道文件
      • l -符号链接文件
      • s -socket文件
      • # 表示找出"xuexue".txt文件
        • find  -type f -name "xuexue".txt
      • # 找出所有以.txt结尾的文件
        • find -type f -name "*.txt"
      • # 找到当前目录下所有名字以host开头的文件
        • find -name "host*"
      • # 找到当前目录名为settings.py文件
        • find -name "settings.py" 

    16,管道命令

    Linux提供的管道符"|"是将两条命令隔开,管道符左边命令的输出会作为管道符右边命令的输入,常见用法:

    • # 检查python程序是否启动
    • ps -ef | grep "python"
    • # 找到test目录下的所有.txt文件

    • ls test|grep ".txt"

    • # 检查nginx的端口是否存活

    • netstat -tunlp |grep nginx

    命令格式

    grep:(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.

      • 语法:grep [参数]  [--color=auto]  [字符串]  filename
      • 参数详解:
      • -i:忽略大小写
      • -n: 输出行号
      • -v: 反向选择
      • --color = auto :给关键部分添加颜色
    • grep "我要找什么"  ./test/ python.py
    • # 排除 -v,排除我要找的东西

    • grep -v "我要找什么" ./test/ python.txt

    16.1,head,tail命令

    • head显示文件前几行,默认前10行
    • tail显示文件后几行,默认后10行
    • # 查看 前 2行
    • head -2 /test/python.txt
    • #查看后2行
    • tail -2 /test/python.txt
    • 持续刷新显示
    • tail -f xx.log
    • #显示文件10-30行
    • head -30 /test/python.txt |tail -21

    17,别名alias命令

    Linux在使用rm(删除),cp(覆盖),mv(搬家)等命令的时候,必须非常小心,因为这些命令都是"炸弹",删库跑路,就是这么来的

    • 查看系统别名的命令:alias
    • 默认别名:

    • alias cp="cp -i"
    • alias egrep="egrep --color=auto"
    • alias fgrep="fgrep --color=auto"
    • alias grep="grep --color=auto"
    • alias l.="ls -d .* --color=auto"
    • alias ll="ls -l --color=auto"
    • alias ls="ls --color=auto"
    • alias mv="mv -i"
    • alias rm="rm -i"
    • alias which="alias | /usr/bin/which --tty-only --read-alias --show-dot --show-title"
    • 别名的作用:我们在Linux中使用cp时候相当于执行了cp -i
    • -i: 删除已有文件或目录之前先询问用户
    • # 别名用比较危险的操作,防止犯错

    18,为rm设置别名

    • 让系统显示do not use rm
    • echo do not use rm
    • # 设置rm别名
    • alias  rm = "echo do not use rm"
    •  
    • # 设置别名永远生效,写入到etc/prodile(针对登录用户的客户,设置环境变量)

    • vim /etc/profile # 编辑文件
    • G 快速到达最后一行
    • O 当前行下一行,创建一个新行,进入编辑模式
    • source  /etc/profile# 读取文件,合同生效
    • 取消别名
    • unalias rm

    19,which命令

    which命令用于查找并显示给命令的绝对路径,环境变量PATH中保存了命令时需要遍历的目录.wgich指令会在环境变量$PATH设置的目录里查找符合条件的文件

    也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行到那一位置的命令

    which pwd

    which python

    查看到的都是绝对路径下的命令的位置

    20,scp命令

    Linux scp命令用于Linux之间复制文件和目录

    scp 是 source copy的缩写,scp是linux系统下基于ssh登录进行安全的远程文件拷贝命令

    • 语法 :scp (可选参数)本地原文件 远程文件标记
    • 参数:
    • -r : 递归复制这个目录
    • -v : 详细方式输出
    • -q : 不显示出书进度条
    • -c :允许压缩

    20.1,文件的传输

    • 传输本地文件到远程地址
    • scp 本地文件 远程用户@远程ip: 远程文件夹/
    • scp ./test/xuexue.txt root@192.168.21.8:/root/practice/
    • scp 本地文件 远程用户名@远程ip:远程文件夹/远程文件名

    • scp test/python.txt root@192.168.21.8:/practice/xuexue_python.txt
    • # 复制远程文件到本地

    • scp root@192.168..21.8:/root/practice/python.py  test/python.py
    • scp -r root@192.168.21.8:/test/python.py

    • 这个先得创建好python.py文件去接收

    21,du命令

    Linux中du命令显示目录或文件的大小

    du会显示指定目录或文件所占用的磁盘大小

    • 用法:du (参数)  (文件或目录)
    • -s: 显示总计
    • -h以k,m,g为单位显示,可读性强
    • # 显示目录或文件所占空间,什么都不跟,代表显示当前目录所有文件大小
    • du
    • # 显示/home的总大小

    • du -sh /home

    22,top命令:top命令用于动态地进行监视活动与系统负载等信息

    • 图片分析
    • 第一行(uptime)
    • 系统时间 主机运行时间 用户连接数(who) 系统1,5,15分钟的平均负载
    • 第二行 进程信息
    • 进程总数, 正在运行的进程数 睡眠的进程数 停止得进程数 僵尸进程数
    • 第三行:cpu信息
    • 1.5 us: 用户空间所占cpu百分比
    • 0.9 sy: 内核空间占用CPU百分比
    • 0.0 ni: 用户进程空间内改变过优先级的进程占用cpu百分比
    • 97.5 id:空闲cpu百分比
    • 0.2 wa:等待输入输出的cpu时间百分比
    • 0.0 hi:硬件CPU中断占百分比
    • 0.0 si:软中断占用百分比
    • 0.0 st: 虚拟机占用百分比
    • 第四行内存信息
      • 8053444 total: 物理内存总量
      • 7779224 used: 已使用的内存总量
      • 274220 free: 空闲的内存总量
      • 359212 buffers: 用做内核缓存的内存量
    • 第五行 :swap信息
    • 8265724 total:交换分区总量
    • 33840 used: 已使用的交换分区总量
    • 8231884 free :空闲交换区总量
    • 7358088 cached Mem: 缓冲的交换区总量,内存中的内容被换出到交换区,然后使用过的交换的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时,可不比再对交换区写入.

    23,chattr命令

    给文件加锁,只能写入数据,无法删除

    • chattr +a python.txt   #  加锁
    • chattr -a python.txt    #  解锁 

    24,lasttr命令 

    查看文件隐藏属性

    lsattr test/python.txt

    25,Linux时间同步

    Linux的date命令可以显示当前时间或者设置系统时间

    查看当前时间

    • 格式化输出时间
    • -d      --date=string   显示指定的时间,而不是当前时间
    • 以 年-月-日显示当前时间
    • date + "%Y-%m-%d"
    • 以年-月-日 时分秒 显示当前时间
    • date +"%Y-%m-%d %T"
    • 在Linux下系统时间和硬件时间不会自动同步,在Linux运行过程中,系统时间和硬件时间以异步的方式运行,互不干扰.硬件时间的运行,是靠Bios电池来运行,而系统时间是CPU tick来维持的
    • 在系统开机的时候,会从Bios中获取硬件时间,设置系统时间

    硬件始终的查看

    • hwclock
    • 同步系统时间和硬件时间,可以用hwclock命令

    • # 以系统时间为基准,修改硬件时间

    • # 以硬件时间为基准,修改系统时间

    26,NTP时间服务器

    时间对于人类来说是必不可少的,时间就是金钱,因此对于服务器时间额度把控非常重要,如果系统的时间不对,那么对于每一个文件的擦欧洲哦都是错误的

    关于时间服务器的配置文件,有如下几种

    • /bin/date   用于Linux时间(软件时钟)的修改与显示的指令
    • /sbin/hwclock 用于BISO时钟(硬件时间)的修改与显示的命令,这是一个root才执行的命令,因为Linux系统上面BISO时间与Linux系统时间时分开的,所以使用date这个指令调整了时间之后,还需要使用hwclock才能将修改后的时间写入BISO当中!
    • /usr/sbin/ntpd 主要提供NTP服务的程序,配置文件为/etc/ntp.conf
    • /usr/sbin/ntpdate :用于客户端的时间的矫正.如果你没有要启用NTP而仅想用NTP Client功能,只会用到这个指令就好了

    由于我们只需要用作客户端更新时间

    ntpdate -u ntp.aliyun,com

    27,wget命令

    wget命令用于在终端下载网络文件

    参数是wget(参数)下载地址

    wget -r -p http:// www.xiaohua100.com  # 递归下载所有资源

    28,开关机命令

    reboot命令用于重启机器

    poweroff用于关闭系统

     

  • 相关阅读:
    依靠MySQL(frm、MYD、MYI)数据文件恢复
    Centos7.4.1708安装Jumpserver
    Ubuntu16.04安装vmware pro 15激活码
    AIX系统命令
    virtualbox迁移虚拟机
    RedHat Enterprise7 搭建ISCSI
    RedHat Enterprise7 修改为CentOS的yum源
    关于Server2008 R2日志的查看
    Centos7.4.1708搭建syslog服务
    ElasticSearch第四步-查询详解
  • 原文地址:https://www.cnblogs.com/ljc-0923/p/10062906.html
Copyright © 2011-2022 走看看