zoukankan      html  css  js  c++  java
  • linux基础

    一 新手必备Linux命令

    1.1 shell

    内核负责驱动硬件、管理活动和分配/管理硬件资源,由于其重要性不能被用户直接操作

    用户通过输入->应用程序->调用系统接口->内核->硬件
    撒

    "SHELL":"人与内核(硬件)的翻译官",用户输入命令,shell会调用相应程序服务秩序工作,目前Linux主流系统默认字符shell是Bash

    1.2 执行命令与查看帮助

    命令名称 [命令参数] [命令对象]

    命令参数 分长格式(man --help)与短格式 (man -h)

    命令对象 要处理的目标文件

    1.3 常见的系统工作命令

    1.3.1 echo 在终端打印字符串或变量

    例:

    [root@localhost ~]# echo "hello world" hello world

    [root@localhost ~]# echo $SHELL /bin/bash

    1.3.2 date 显示或设置系统时间或日期 date [参数] [+格式]

    格式:

    时间方面 日期方面
    % : 印出 % %a : 星期几 (Sun..Sat)
    %n : 下一行 %A : 星期几 (Sunday..Saturday)
    %t : 跳格 %b : 月份 (Jan..Dec)
    %H : 小时(00..23) %B : 月份 (January..December)
    %I : 小时(01..12) %c : 直接显示日期与时间
    %k : 小时(0..23) %d : 日 (01..31)
    %l : 小时(1..12) %D : 直接显示日期 (mm/dd/yy)
    %M : 分钟(00..59) %h : 同 %b
    %p : 显示本地 AM 或 PM %j : 一年中的第几天 (001..366)
    %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M) %m : 月份 (01..12)
    %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 %U : 一年中的第几周 (00..53) (以 Sunday 为一周的第一天的情形)
    %S : 秒(00..61) %w : 一周中的第几天 (0..6)
    %T : 直接显示时间 (24 小时制) %W : 一年中的第几周 (00..53) (以 Monday 为一周的第一天的情形)
    %X : 相当于 %H:%M:%S %x : 直接显示日期 (mm/dd/yy)
    %Z : 显示时区 %y : 年份的最后两位数字 (00.99)
    %Y : 完整年份 (0000..9999)

    参数:

    • -d datestr : 显示 datestr 中所设定的时间 (非系统时间)
    • --help : 显示辅助讯息
    • -s datestr : 将系统时间设为 datestr 中所设定的时间
    • -u : 显示目前的格林威治时间
    • --version : 显示版本编号

    例:

    [root@localhost ~]# date "+%x" 2019年08月26日

    [root@localhost ~]# date -u 2019年 08月 26日 星期一 09:19:16 UTC

    1.3.3 wget 下载网络文件 wget [参数] [网络地址]

    1. 下载单个文件 wget URL

    2. wget -O下载并以不同的文件名保存

      wget默认会以最后一个符合”/”的后面的字符来命令,对于动态链接的下载通常文件名会不正确。

      wget -O name URL

    3. wget –limit -rate限速下载 wget –limit-rate=300k URL

    4. wget -c断点续传

    5. wget -b后台下载

    6. 代理名称下载

      wget –user-agent=”Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.204 Safari/534.16″ URL

    7. wget –spider测试下载链接

    8. wget -i下载多个文件 wget -i file

    9. wget -Q限制总下载文件大小

    10. wget -r -A下载指定格式文件

    1.3.4 ps 查看系统进程

    参数 作用
    -a 显示所有用户进程
    -u 显示当前用户进程
    -x 显示没有控制终端的进程

    Linux系统中5种常见进程状态,分为

    • R(运行)
    • S(中断)
    • D(不可中断)
    • Z(僵死)
    • T(停止)

    1.3.5 top 动态监测进程活动与系统负载等信息

    1.4 系统状态监测命令

    1.4.1 ifconfig 获取网卡配置与网络状态等信息

    1.4.2 uname 查看系统内核与系统版本信息 uname [-a]

    1.4.3 update 查看系统负载信息

    1.4.4 free显示当前系统内存使用情况 free -m/g/h

    1.4.5 who 查看当前登入主机用户终端信息

    1.4.6 last 用于查看所有系统的登录信息

    1.4.7 history 显示历史执行过的命令

    history -c 清除历史

    默认记录1000条命令记录,可在/etc/profile中修改HISTSIZE变量值

    1.5 工作目录切换命令

    1.5.1 pwd 显示所处工作目录

    1.5.2 cd 工作路径切换

    参数 作用
    ~ 切换至家目录
    - 切换至上次所在目录
    .. 切换至上级目录
    ~username 切换至指定用户家目录

    1.5.3 ls 显示目录文件信息 ls [选项] [目录]

    参数 作用
    -a 显示全部文件
    -d 仅看目录本身
    -h 易读文件容量
    -l 显示文件详细信息
    • 查看文件详情:ls -l 或 ll
    • 增强对文件大小易读性,以人类可读的形式显示文件大小: ls -lh
    • 查看当前目录下的所有文件或者目录,包括隐藏文件: ls -la
    • 只查看当前目录: ls -ld

    1.6 文本文件编辑命令

    1.6.1 cat 查看纯文本文件(较短的) cat [参数] [文件]

    参数 作用
    -n 显示行号
    -b 显示行号(不包括空行)
    -A 显示出不可见符号,如空格,tab键

    1.6.2 more 查看纯文本(较长的) more [参数] [文件]

    参数 作用
    -数字 预先显示行数(默认显示为一页)
    -d 显示提示语句与报错信息

    1.6.3 head 查看纯文本前N行 head [参数] [文件]

    参数 作用
    -n 数字 显示指定行数
    -n-数字 正常输出(如cat),但不显是指定尾行

    1.6.4 tail 查看后N行, tail [参数] [文件]

    参数
    -n 数字 显示指定后N行
    -f 持续刷新显示内容

    1.6.5 od 查看特殊格式文件 od [参数] [文件]

    1.6.6 tr 转换或删除文本文件中的字符

    1.6.6 wc统计文本行数、字数、字节数 wc [参数] [文本]

    参数 作用
    -l 只显示行数
    -w 只显示单词数
    -c 只显示字节数

    1.6.7 cut提取文本字符 cut [参数] [文本]

    参数 作用
    -d 分隔符 指定分隔符
    -f 指定列
    -c 单位字符

    1.6.8 diff 比较文本差异 dif [参数] [文件]

    参数 命令
    -b 忽略空格差异
    -B 忽略空行差异
    --brief或-q 报告是否存在差异
    -c 使用上下文输出格式

    1.7 文件目录管理命令

    1.7.1 touch 创建空白文件与修改文件时间 touch [选项] [文件]

    参数 作用
    -a 修改访问时间
    -m 修改更改时间
    -d 同时修改访问与修改时间
    -t 要修改成的时间

    1.7.2 mkdir 创建空白文件夹 mkdir [选项] [目录]

    参数 作用
    -m 指定权限
    -p 创建多层目录
    -v 显示创建过程

    1.7.3 cp 复制文件或目录 cp [选项] 源文件 目标文件

    参数 作用
    -p 保留源文件属性
    -d 若对象为链接文件,则保留链接属性
    -r 递归复制(用于目录)
    -i 询问覆盖
    -a 相当于-pdr

    1.7.4 mv 移动文件或修改名称 mv [选项 i/f] [源文件或目录] [目标文件或目录]

    1.7.5 rm 删除文件或者目录

    参数 作用
    -f 忽略警告信息
    -i 删除询问
    -r 删除文件夹

    1.7.6 dd 指定大小的拷贝文件或指定转换文件

    1.8 用户和组管理命令

    1.8.1 useradd 创建新用户 useradd [选项] 用户名

    参数 作用
    -d 指定用户家目录(默认/home/username)
    -D 展示默认值
    -e 账号有效期,YYYY-MM-DD
    -g 指定初始用户组
    -G 指定一个或多个拓展用户组
    -N 不创建与用户用户同名的用户组
    -s 指定默认shell
    -u 指定用户UID
    1.8.1.1 id 查看用户信息

    1.8.2 passwd 修改用户密码 pass [选项] [用户名]

    修改当前用户 passwd

    修改其他用户 passwd 用户名

    参数 作用
    -l 锁定用户禁止登陆
    -u 解除锁定
    --stdin 允许从标准输入修改用户密码,如(echo "newpasswd" | passwd --stdin username)
    -d 是账号无密码
    -e 强制用户下次登陆时修改密码
    -S 显示用户密码状态

    1.8.3 userdel 删除用户 userdel [参数] username

    参数 作用
    -f 强制删除,家目录及相关文件
    -r 同时删除,家目录及相关文件

    1.8.4 usermod 修改用户属性 usermod [参数] username

    1.9 打包压缩文件命令

    1.9.1 tar 命令用于对文件打包压缩或解压 tar [参数] [文件]

    打包并压缩文件 tar -czvf 压缩包.tar.gz 文件名

    解压并展开压缩包 tar -xzvf 压缩包.tar.gz

    参数 作用
    -c 创建压缩文件
    -x 解压缩文件
    -t 查看压缩包内文件
    -z 用Gzip压缩或解压
    -j 用bzip2压缩或解压
    -v 显示压缩或解压过程
    -f 目标文件名
    -p 保留原始权限与属性
    -P 使用绝对路径压缩
    -C 指定解压到目录

    1.10 文件搜索命令

    1.10.1 grep 对文本进行搜索 grep [参数] [文件]

    搜索关键词 grep 关键词 文件

    作用
    -b 将可执行文件当做文本搜索
    -c 仅显示找到次数
    -i 忽略大小写
    -n 显示行号
    -v 反向选择

    1.10.2 find 查找文件 find [查找路径] [条件] [操作]

    作用
    -name 匹配名称
    -perm 匹配权限
    -user 匹配所有者
    -group 匹配组
    -mtime -n +n 匹配修改时间(-n指那天以内,+n指n天以前)
    -atiem -n +n 匹配访问时间
    -ctime -n +n 匹配修改权限时间
    -nouser 匹配无所有者文件
    -nogroup 匹配无所有组文件
    -newer f1 !f2 匹配比文件f1新比f2旧的文件
    -type b/d/c/p/l/f 匹配文件类型
    --size 匹配文件大小
    -prune 忽略某个目录
    --exec{} ; 后面可接对搜索结果进一步处理的命令

    二 管道符、重定向与环境变量

    2.1 管道命令符

    “|” 将前一个命令的标准输出当做后一个命令的标准输入 命令1|命令2

    root@localhost ~]# grep -n "长" 1 | wc -l 2

    2.2 输入输出与重定向

    2.2.1 输入输出

    标准输入(STDIN,文件描述符为0):默认键盘输入,为0时表示从其他文件或命令输出

    标准输出(STDOUT,文件描述符为1):默认输出到屏幕,为1时表示是文件

    错误输出(STDERR,文件描述符为2):默认输出到屏幕,为2时表示文件

    2.2.2 输入输出重定向符的情况

    输出重定向:

    符号 作用
    命令 > 文件 标准输出重定向到一个文件中(清空原有文件数据)
    命令 2> 文件 将错误输出重定向到一个文件中(清空原有文件数据)
    命令 >> 文件 标准输出重定向到一个文件中(追加到原有文件数据)
    命令 2>> 文件 将错误输出重定向到一个文件中(追加到原有文件数据)
    命令 >> 文件 2>&1 将标准输出与错误输出共同写入到文件中(追加)

    输入重定向:

    作用
    命令 < 文件 将文件作为命令的标准输入
    命令 << 分界符 从标准输入中读入,直到遇见‘’分界符‘’停止
    命令 < 文件 1 > 文件 2 将文件1作为命令的标准输入并将标准输出到文件2

    2.3 命令行通配符

    2.3.1 常见文本通配符

    含义
    * 匹配0个或多个字符
    ? 匹配任意单个字符
    [0-9] 匹配范围内数字
    [abc] 匹配给出的字符

    2.3.2 特殊字符

    作用
    (反斜杠) 转义单个字符
    '' (单引号) 转义所以字符
    "" (双引号) 变量依然生效
    `` (反引号) 执行命令语句

    2.4 实用PATH变量

    2.4.1 alias 设置命令别名 alias 别名=命令 /unalias 取消别名 unalias 别名

    2.4.2 echo $PATH 查看path变量

    2.4.3 PATH=$PATH:变量路径

    2.5 重要的环境变量

    变量名 作用
    HOME 用户主目录
    SHELL 当前的shell
    HISTSIZE 历史命令记录条数
    MAIL 邮件邮箱文件
    LANG 语系数据
    RANDOM 随机数字
    PS1 bash 提示符
    HISTFILESIZE history命令存储数量
    PATH 在路径中目录查找执行文件
    EDITOR 默认文本编辑器

    2.5.1 export 将局部命令提升为全局变量

    ​ export 变量名

  • 相关阅读:
    UI5 Databind
    the meaning of myconputer environment path
    Linux查看日志常用命令
    fw: IP bonding in Linux.
    FW:expect tcl install
    install ET underlinux
    转expect 文一篇。
    linux 集萃
    try expect and autoexpect
    linux 压缩种类
  • 原文地址:https://www.cnblogs.com/zhao1126/p/11470547.html
Copyright © 2011-2022 走看看