一切皆文件

Linux

  • Linux内一切皆文件;表现之一:硬件设备也通过文件表示
    物理终端:/dev/console
    虚拟终端: /dev/tty#[1,6]
    串行终端:/dev/ttyS#
    伪终端: /dev/pts/#
    注意:在启动设备之后,在其上关联一个用户接口程序,即可实现与用户交互,交互式程序有两类:GUI(图形化界面)和CLI(命令行界面)。

    • 查看终端设备:
      ~]# tty
      查看接口程序:
      ~]# echo #SHELL
      启动GUI接口:
      在某一虚拟终端接口运行命令:startx &

命令提示符:

  • [root@magedu ~]# COMMAND
    我们称之为PS1,显示组成部分使用命令:

    echo $PS1
    [\u@\h \W]\$

  • root : 当前登录的用户
    magedu:当前主机的主机名,非完整格式;
    ~:用户当前所在的目录,也成为工作目录;相对路径
    #:命令提示符(#:管理员、$:普通用户)
    注意:生产环境下建议使用普通用户账号登录;
    执行管理操作使用 su 临时切换至管理员,操作完成即退回。

命令的格式:

  • COMMAND [OPTIONS … ] [ARGUMENTS … ]
    命令 选项 参数
    选项:用于启用或关闭命令的某个或些功能。
    参数:命令的作用对象(向命令提供数据的),命令的参数可以有多个。
    注:多个命令放在同一行执行可以使用分号;隔开,但是前面命令执行成功与否跟后面命令没关系。
    \ :命令太长需要换行
    && :如果需要命令同时执行成功
    || :如果有一个命令执行成功 那么其他命令就不再执行
    && 逻辑与 ; || 逻辑或。

Linux命令:

help
  • help COMMAND
    help可以查看:内部命令、外部命令
    内部命令(shell内嵌命令):help COMMAND
    外部命令:
    1、COMMAND –help; COMMAND -h;
    2、man COMMAND
    3、info COMMAND

[s@magedu test]PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/s/bin

注:查找过程时有顺序的,自左向右,直到查找到为止,如果一个命令存在于多个路径中,只匹配第一个找到的路径,所以其先后次序是很关键滴。

man
  • 查看man手册页:man [章节] keyword
    列出所有帮助: man -a keyword
    搜索手册:man -k (使用whatis数据库)
    查看某个命令在哪个章节 (相当于whatis) : man – f keyword
    man配置文件的路径:CentOS 6:/etc/man.config ;CentOS 7:/etc/man db.conf
  • man中有一些符号标记的内容,这些符号的意义:
    [ ] :可选内容
    < > :必须内容
    | :二选一
    … :同类内容可以有多个
    { } :分组

  • man命令的操作方法:

    • /keyword :向下搜索,n向下,N向上
      ?keyword :向上搜索
      b :向文件首部翻屏
      空格 :向文件尾部翻屏
    • #G :回到文件首部
      G :翻至文件尾部
info
  • info [ 命令 ]
    info使用帮助:
    方向键,PgUp,PgDn
    Tab 键,移动到下一个链接
    d 显示主题目录
    Home 显示主题首部
    Enter 进入选定链接
    n/p/u/l 进入下/前/上一层/最后一个链接
    s 文字,文本搜索
    q 退出 info
echo
  • 回显命令
    -e 转义符
    echo -e “\a” ;
    echo -e “good\c” ;
    echo -e “good\tgood” ;
    echo -e “good\ngood”;

echo “$VAR_NAME” 双引号表示弱引用;单引号表示强引用;不加引号默认双引号
echo ‘$VAR_NAME’ 括号、反引号,命令的替换,把结果作为输出;
反引号、( ):命令的替换,把结果作为输出

which
  • which COMMAND
    显示应用程序文件的位置
    如果想看文件本身,而非别名,使用:which –skip-alias COMMAND
whatis
  • 显示命令的帮助信息的位置
    CentOS 6:使用makewhatis 命令可将当前系统上的所有帮助手册及与之对应的关键字创建为一个数据库;
    CentOS 7:使用mandb命令
hash
  • 记录和显示程序的位置(可执行程序的位置)
    -l :显示缓存
    -p :起别名,暂时性
    -t name 打印
    -d name 清除nanme缓存
    -r 清除缓存
    history 管理命令历史,每次执行的命令都会放置在内存的缓存当中,直到退出当前终端后会被保存在命令历史文件当中。家目录下有个隐藏文件 .bash_history,可查看该文件的内容获取历史命令。
history

查看或设置命令历史相关参数

  • history [-c] [-d offset] [n]
    history -anrw [filename]
    history -ps arg [arg…]
    -d:删除历史命令指定的命令
    -c:清空命令历史
    -a:手动追加当前会话缓冲区的命令历史至命令历史文件中
    -w:保存到文件中
    history # :显示最近#条命令
  • 该命令所对应的环境变量:
    $HISTSIZE 修改history存储条数
    $HISTFILE 指定历史文件的存放位置(~/.bash_history)
    $HISTFILESIZE 指定历史文件的命令的存储条数
    HISTTIMEFORMAT=“%F %T “ 显示每条命令的具体执行时间
    HISTIGNORE= 把某些命令敏感的字符串给屏蔽掉不予显示
    环境变量:HISTCONTROL (在/etc/profile配置文件中控制)
    ignoredups 默认,忽略重复的命令,连续且相同为“重复”
    ignorespace 忽略所有以空白开头的命令
    ignoreboth 相当于ignoredups, ignorespace的组合
    erasedups 删除重复命令
    修改环境变量:export 变量名 = “值”
    export magedu=123 顶一个环境变量
    注:history 默认最多只能记录1000命令
    命令历史一般记录在.bash_history文件中
    当前shell中的历史记录会被记录在内存中,只有退出之后才会保存在.bash_history中

  • 调用历史中的命令:
    ! # :重复执行第#条命令
    !! :重复执行上一条命令
    !string:重复执行最近一次以string开头的命令
    !?string 重复前一个包含string的命令
    ^string 删除上一条命令中的string

  • 调用上一条命令的最后一个参数:
    ! $
    esc . 有些终端还可以使用 Alt+
command !^ : 利用上一个命令的第一个参数做cmd的参数 ls /tmp /opt ls !^
command !$ : 利用上一个命令的最后一个参数做cmd的参数 ls /tmp /opt/ ls !$
command !* : 利用上一个命令的全部参数做cmd的参数 ls /tmp /opt ls !*
command !:n : 利用上一个命令的第n个参数做cmd的参数 ls /tmp /opt ls !:1
command !n:^ 调用第n条命令的第一个参数 ls !505:^
command !n:$ 调用第n条命令的最后一个参数 ls !505:$
command !n:m 调用第n条命令的第m个参数 ls !505:2
command !n:* 调用第n条命令的所有参数 ls !505:*
command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数 ls !ls:^
command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
[root@CentOS68 ~]# ls /tmp/ /opt/
/opt/:
rh
/tmp/:
epel.repo.bak         huan.txt orbit-gdm   pulse-QRIoXpeAIz6g
functions-2017-03-23 keyring-BPBfln orbit-root  pulse-rnm429VarZOM
[root@CentOS68 ~]# ls !ls:$ ls /opt/
rh
command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
[root@CentOS68 ~]# ls /tmp/ /opt/
/opt/:
rh
/tmp/:
epel.repo.bak         huan.txt orbit-gdm   pulse-QRIoXpeAIz6g
functions-2017-03-23 keyring-BPBfln orbit-root  pulse-rnm429VarZOM
[root@CentOS68 ~]# 
[root@CentOS68 ~]# 
[root@CentOS68 ~]# ls !ls:2 ls /opt/
rh
command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数
[root@CentOS68 ~]# ls /tmp/ /opt/ /opt/:
rh /tmp/:
epel.repo.bak         huan.txt        orbit-gdm   pulse-QRIoXpeAIz6g
functions-2017-03-23 keyring-BPBfln  orbit-root  pulse-rnm429VarZOM
[root@CentOS68 ~]#  [root@CentOS68 ~]# ls !ls:* ls /tmp/ /opt/ /opt/:
rh /tmp/:
epel.repo.bak         huan.txt        orbit-gdm   pulse-QRIoXpeAIz6g
functions-2017-03-23 keyring-BPBf
date、hwclock
  • date [OPTION]… [+FORMAT]
    显示系统时间
    -s 修改系统时间
    date +%F 执行我们的时间格式
    +%Y +%y 年
    +%m 月
    +%d 日
    +%H 时
    +%M 分
    +%S 秒
    date +”%Y-%m-%d”
    –date=”” 生产环境保证时间准确性 ntp 定时同步互联网上的时间服务器
  • hwclock clock :显示硬件时钟
    -s 以硬件时钟为准,校正系统
    -w 以系统时钟为准,校正硬件

原创文章,作者:s,如若转载,请注明出处:http://www.178linux.com/72299

(0)
上一篇 2017-04-01 19:01
下一篇 2017-04-01 19:16

相关推荐

  • HAproxy簡單配置

    用途:TCP/HTTP反向代理,四层负载均衡,适合高可用环境。Linux6.4版本后haproxy已随base仓库收录进来。文档:http://cbonte.github.io/haproxy-dconv/主程序:/usr/sbin/haproxy 主配置文件:/etc/haproxy/haproxy.cfg启动文件:/usr/lib/systemd/sys…

    2017-05-17
  • iptables/netfilter入门

      iptables是Linux中的重要组件,它是对报文进行过滤,在2001年的1月Linux 2.4内核发布以来,就已经是Linux的一部分了。     现在的iptbales已经成为了功能很大的防火墙,具备了专有的商业防火墙的大多数的功能了。 1、防火墙简介 2、iptables/netfilter简介 …

    Linux干货 2017-01-31
  • Linux用户和组管理

    Linux用户和组管理 Username / UID 管理员:root,0 普通用户 : 1–65535 系统用户 :系统已经已经存在专门用来对系统服务或者系统资源进行管理的 1–499(CentOS 6.X) 1–999 (CentOS 7.X) 登录用户:平时专门做系统管理的用户 500+ (CentOS 6.X) 1000+ (CeentOS 7.X)…

    Linux干货 2017-04-01
  • etc的常见问答

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost tuser1]# cp -r /etc/skel/ /home/tuser1 [root@localhost tuser1]# chmod -R go= /home/tuser1/ [root…

    2017-12-26
  • N21-天天-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 主要功能: 网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。 集线器的英文称为“Hub”。主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心…

    Linux干货 2016-08-29
  • Linux用户管理相关

    Q1列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@radio_freshman ~]# who root     tty1         201…

    Linux干货 2016-11-13