linux 基础命令学习(1)

查看帮助
首先使用type 查看命令是外部还是内部命令
内部命令:help COMMAND  或 man bash
外部命令:1、COMMAND –help 或 COMMAND -h
                 2、使用手册  man  COMMAND
                 3、信息页   info COMMAND
                 4、程序官方文档
                 5、GOOGLE
其中man 命令一共有9个章节
Image [3]
                  1: 用户命令
                  2: 系统调用
                  3: C库调用
                  4: 设备文件及特殊文件
                  5: 配置文件格式
                  6: 游戏
                  7: 杂项
                  8: 管理类的命令
                  9:Linux 内核API
通过whatis  keyword 或man -f keyword 查看命令所在章节
通过man [章节] keyword  查看
或者通过 man –a keyword 查看命令全部内容
帮助手册中的段落说明:                      man命令的操作方法:
    NAME 名称及简要说明                          space, ^v, ^f, ^F: 向文件尾翻屏
    SYNOPSIS 用法格式说明                        b, ^b: 向文件首部翻屏
• [] 可选内容                                               d, ^d: 向文件尾部翻半屏
• <> 必选内容                                             u, ^u: 向文件首部翻半屏
• a|b 二选一                                                RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行
• { } 分组                                                     y or ^Y or ^P or kor ^K:向文件首部翻一行
• … 同一内容可出现多次                              or ^K:向文件首部翻一行
    DESCRIPTION 详细说明                          q: 退出
    OPTIONS 选项说明                                 #:跳转至第#行
    EXAMPLES 示例                                      1G: 回到文件首部
    FILES 相关文件                                         G:翻至文件尾部
    AUTHOR 作者
    COPYRIGHT 版本信息
    REPORTING BUGS bug信息
    SEE ALSO 其它帮助参考
man 搜索
/KEYWORD:
以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;不区分字符大小写;n: 下一个 N:上一个

PS(Prompt Sign): 是指命令提示符。根据个人喜好可以对命令提示符进行修改
man bash  使用/PS1 按N 一直到最后一个PS1 可看到帮助
Image
\d :代表日期,格式为weekday month date,例如:”Mon Aug1″
\H:完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
\# :下达的第几个命令
\$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
 
 
如果需要修改ROOT的指命令提示符,可编辑/root/.basbrc进行添加,普通用户需在各自家目录下进行修改例如编辑/home/test/.bashrc进行修改。如过需要所有用户都使用统一的话,需要在/etc/bashrc里添加。
我们可以通过设置PS1变量使提示符成为彩色。
前景 背景 颜色                 代码  意义
30    40   黑色                 0       OFF
31    41   红色                 1       高亮显示
32    42   绿色                 4       underline
33    43   黃色                 5       闪烁
34    44   蓝色                 7       反白显示
35    45   紫紅色              8       不可见
36    46   青蓝色
37    47   白色
也可以设置多种颜色  例如 :PA1=\[\e[1;39m\][\[\e[1;31m\]\u\[\e[1;33m\]@\[\e[1;34m\]\H \[\e[1;32m\]\W\[\e[1;39m\]]\[\e[1;35m\]\$\[\e[1;39m\]
Image [2]
如果结尾不添加 \[\e[m\]  会导致最后一个颜色之后包括输入的文字也是最后一个的颜色。

    history:
 history [-c] [-d offset] [n]
 history -anrw [filename]
 history -ps arg [arg…]
        -c: 清空命令历史
Image [5]
        -d N: 删除历史中指定的第N条命令
Image [6]
          n: 显示最近的n条历史
Image [7]
        -a: 追加本次会话新执行的命令历史列表至历史文件
        -r: 读历史文件附加到历史列表
        -w: 保存历史列表到指定的历史文件
        -n: 读历史文件中未读过的行到历史列表
        -p: 展开历史参数成多行,但不存在历史列表中
Image [9]
        -s: 伪造历史,且命令不执行
Image [8]
命令历史相关环境变量
    HISTSIZE:命令历史记录的条数
    HISTFILE:指定历史文件,默认为~/.bash_history
    HISTFILESIZE:命令历史文件记录历史的条数  ; 默认不设置为500条
    HISTTIMEFORMAT=“%F %T “ 显示时间
    Image [4]
    HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史
    控制命令历史的记录方式:
        环境变量:HISTCONTROL
            ignoredups 默认,忽略重复的命令,连续且相同为“重复”
            ignorespace 忽略所有以空白开头的命令
            ignoreboth 相当于ignoredups, ignorespace的组合
            erasedups 删除重复命令
    export 变量名=”值“
    存放在 /etc/profile 或 ~/.bash_profile
命令行历史操作方法
重复前一个命令,有4种方法
        重复前一个命令使用上方向键,并回车执行
        按 !! 并回车执行
        输入 !-1 并回车执行
        按 Ctrl+p 并回车执行
!:0 执行前一条命令(去除参数)
Ctrl + n 显示当前历史中的下一条命令,但不执行
Ctrl + j 执行当前命令
!n 执行history命令输出对应序号n的命令
!-n 执行history历史中倒数第n个命令
!string 重复前一个以“string”开头的命令
!?string 重复前一个包含string的命令
!string:p 仅打印命令历史,而不执行
!string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
Image [10]
!string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
Image [11]
!string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
!string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数
Image [12]
^string 删除上一条命令中的第一个string
Image [13]
^string1^string2 将上一条命令中的第一个string1替换为string2
Image [14]
!:gs/string1/string2 将上一条命令中所有的string1都替换为 string2
Image [15]
!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
!*:p 打印输出 !*(上一条命令的所有参数)的内容

screen命令:
    创建新screen会话
        screen –S [SESSION]
    显示所有已经打开的screen会话
        screen -ls
提示为Detached为表示为中途退出的会话需使用 screen -r 进行恢复
Image [17]
 如果提示为Attached的需要使用 screen -x 进行加入
Image [16]
echo $STY   检查自己是否是在一个screen会话里 如果在会显示会话号及会话名称,反则为空
    退出并关闭screen会话
  Image [22]
  Image [23]
 exit  或着只有一个会话窗口的话可以用 C+a K 退出
 Image [18]
Image [19]
    剥离当前screen会话
        Ctrl+a,d
screen 进阶
Ctrl+a ?  显示所有 键位信息
Image [21]
在连接screen会话后 可以在里面再创建多个窗口 例如一台机器不同tty类似
  Ctrl+a c :创建窗口   或使用命令 screen -m
  Ctrl+a w :窗口列表
  Ctrl+a n :下一个窗口
  Ctrl+a p :上一个窗口
  Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换
  Ctrl+a K(大写) :关闭当前窗口,并且切换到下一个窗口(当退出最后一个窗口时,该终端自动终止,并且退回到原始shell状态)
        Ctrl+a S 水平分割
   Image [20]
        Ctrl+a | 垂直分割   低版本无法执行
        Image [31]
        Ctrl+a TAB 切换
        C-a X 关闭当前焦点所在的屏幕区块(并不会真的关闭)例如分割后取消分割
        C-a Q 关闭除当前区块之外其他的所有区
        screen -X -S ID quit 可以删除会话
      Image [24]

    Hash缓存表
系统初始hash表为空,当外部命令执行时,默认会从PATH路径下寻找该命
令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解
释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找。
利用hash缓存表可大大提高命令的调用速率
    hash常见用法
hash 显示hash缓存
hash –l 显示hash缓存,可作为输入使用
hash –p path name 将命令全路径path起别名为name
hash –t name 打印缓存中name的路径
hash –d name 清除name缓存
hash –r 清除缓存

echo命令
    功能:显示字符
    语法:echo [-neE][字符串]
    说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开,
并在最后加上换行号
    选项:
     -E (默认)不支持 \ 解释功能
     -n 不自动换行
     -e 启用 \ 字符的解释功能
    显示变量
echo “$VAR_NAME“ 变量会替换,弱引用
echo ‘$VAR_NAME‘ 变量不会替换,强引用
启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成
一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
Image [33]
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行,且替换本行内容
Image [32]
\t 插入tab
\\ 插入\字符
\0nnn 插入nnn(八进制)所代表的ASCII字符
\xHH插入HH(十六进制)所代表的ASCII字
echo -e ‘\033[43;31;5m666666\033[0m’
Image [30]
把一个命令的输出打印给另一个命令的参数
echo “This system’s name is $(hostname) “
Image [25]
echo “i am `whoami` “
Image [26]
    括号扩展:{ }
打印重复字符串的简化形式
echo file{1,3,5}
Image [29]
echo {a..z}
Image [28]
echo {001..20..3}    {起始数..结尾数..间隔}
Image [27]
echo “hello”  >或>>  file  也可以将内容输出到文本 > 清空并写入 >> 追加

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/93832

(0)
StouyStouy
上一篇 2018-03-30 20:34
下一篇 2018-03-30 20:45

相关推荐

  • 网络安全基础知识和ssh

    加密基础 NISI定义的数据安全 保密性:数据保密性,隐私性 完整性:数据完整性,系统完整性 可用性:能正常获取其中信息 安全攻击 被动攻击:窃听 主动攻击:伪装(利用telnet伪装身份发邮件,利用dig查找邮件服务器),重放,消息篡改,拒绝服务 安全机制 加密,数据签字,访问控制,数据完整性,认证交换,流量填充,路由控制,公正 安全服务 认证;访问控制;…

    2018-05-20
  • Centos6.9上安装httpd2.2.34步骤

    Centos6.9上安装httpd2.2.34步骤 1.      首先安装包组 yum groupinstall “development tools”如下图所示: 2.      我们需要建立一个repo仓库,可以指向网络镜像地址,也可以指向光盘,这里为了更加快速,所以指向光盘。并且清除缓存,获取repolist列表。 在/etc/yum.repos.d…

    2018-04-22
  • MongoDB Replica Set & Sharding

    记得风吹起的零散记忆 ,堆砌着巧克力般的幸福甜蜜,那时一起走过的青草绿地 ,留下了锦瑟音里的万千思绪

    2018-04-10
  • yum使用

    第一部分yum基础 yum 参数: search (搜索某个软件名称或是描述的重要关键字) list(类似于rpm -qa) info(类似于rpm -qai) provides(类似于rpm -qf) eg:搜索磁盘陈列raid相关的软件有哪些? [root@centos7 yum]#yum search raid 找出mdadm这个软件的功能为何? [r…

    Linux笔记 2018-04-20
  • Linux之下的文件权限

    文件的属性 文件属性 Linux下的文件类型 -:普通文件 d: 目录文件 b: 块设备 c: 字符设备 l: 符号链接文件 p: 管道文件pipe s: 套接字文件socket …… 权限表示法 文件的权限 在文件权限中,一共有十字符,第一个字符为文件的类型。接下来的字符分为三组,分别是文件所有者、所属组、其他人。每一组分别由rwx 三个参数组合。其中,r…

    Linux笔记 2018-04-08
  • puppet实现nginx反代tomcat+memcached

    puppet实现nginx反代tomcat+memcached

    2018-04-16