`
lewis122
  • 浏览: 237639 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Shell学习笔记(三)

 
阅读更多

系统提示信息

Bash shell的登录信息提示在【/etc/issue】和【/etc/motd】中配置。


【/etc/issue】文件可以修改系统提示信息,例如系统版本、时间等
【/etc/motd】文件可以修改用户登陆时候的提示信息,例如欢迎信息等。

 

  • 【\d】本地端的时间的日期
  • 【\l】显示第几个终端接口
  • 【\m】显示硬件等级
  • 【\n】显示主机的网络名称
  • 【\r】操作系统的版本
  • 【\t24】小时时间格式显示时间
  • 【\s】操作系统名称
  • 【\v】操作系统的版本

修改/etc/issue文件影响第一行
修改/etc/motd文件影响第二行

 

系统设定值

      Bash shell系统设定值在【/etc/profile】和【/etc/bashrc】中进行设置。而个人设定值在【~/.bash_profile】和【~/.bashrc】中设置。

  • 【/etc/profile】文件中设置了几个重要的环境变量。例如PATH、MAIL、LOGNAME、HOSTNAME、INPUTRC等。同时这个文件也规划出【/etc/profile.d】。
  • 【/etc/bashrc】文件在规划umask的功能,也同时规划出提示符“PS1”的内容。
  • 【/etc/man.config】文件规范了使用man的时候man page的路径到那里寻找。

个人设定值

Bash shell个人设定值在【~/.bash_profile】和【~/.bashrc】中设置。

  • 【~/.bash_profile】文件中定义了个人化的路径(PATH)与环境变量的文件名称。
  • 【~/.bashrc】文件中设置个人化变量。例如命令的别名设置、路径的重新定义等。
  • 【~/.bash_logout】文件中指定了在注销shell的时候,BASH会为你做的事情。
  • 【source】命令可以将设定在文件中的内容读取一次。

在上面的4个文件中分别加上标示。

 

login as: root
root@192.168.14.21's password:
Server refused to set environment variables
Last login: Thu Aug 16 22:13:38 2012
this is /etc/profile
this is /etc/bashrc
this is ~/.bashrc
this is ~/.bash_profile
[root@jianshi-21 ~]#

 用户登录系统时配置文件的加载顺序:

        1  /etc/profile
        2  /etc/bashrc
        3  ~/.bashrc
        4  ~/.bash_profile

 

[root@jianshi-21 ~]# source .bashrc
this is /etc/bashrc
this is ~/.bashrc
[root@jianshi-21 ~]#
 
[root@jianshi-21 ~]# . .bashrc
this is /etc/bashrc
this is ~/.bashrc
[root@jianshi-21 ~]#
 

终端环境设置

终端的环境设置使用【stty】命令,通过stty命令可以直接修改和查询终端驱动程序的设置。stty命令的使用比较简单,可以不带参数执行。
【stty -a】命令将当前所有的stty参数全部显示出来。

  • intr 给正在运行的程序发送中断信号。
  • quit 给正在运行的程序发送推出信号。
  • erase 向前删除字符
  • kill 删除命令行上的文字
  • eof 文件结束、输入结束
  • start 重启暂停的输入
  • stop 停止当前的输入
  • susp 给正在运行的程序发送一个终端停止信号
  • rpint 输入命令的时候提示使用过的
  • werase 删除命令行的最后一个字
[root@jianshi-21 ~]# stty -a
speed 38400 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>;
eol2 = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff
-iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
echoctl echoke
[root@jianshi-21 ~]#

      有时候运行一些程序,需要修改终端的设置。对于用户而言,这些修改往往是不可见的,因为程序在退出后,会将终端设置为原有的情况。但是,如果出现程序崩溃或被kill命令杀死的情况,有可能来不及将终端设置为原有的参数。这时,终端就有可能出现异常的情况,有可能不能正常处理换行字符,或不能恰当地显示输入的字符,甚至可能不能正确执行命令。
      使用cat命令或more命令去显示一个二进制文件也有可能会造成终端的混乱。下图为所示为使用了cat命令显示一个名为a.out的二进制文件的情况。显示完文件内容后,出现了终端的混乱。这时,所有输入和输出字符都无法正常显示。出现这种情况的原因是由于很多的二进制文件都包含有特殊的字符,这些字符会导致终端混乱这一问题的出现。

在这种情况下,可以使用reset命令将终端恢复到正确的状态。
修改del向后删除,backspace向前删除
Sty erase ^?        Stty erase ^H

 

分享到:
评论

相关推荐

    shell编程教程.chm

    awk基础入门(4) Unix系列shell程序编写(上) awk基础入门(5) Unix系列shell程序编写(下) Unix系列shell程序编写(中) shell游戏:俄罗斯方块 ...Shell学习笔记 三 Shell学习笔记 四 Shell学习笔记 五

    linux脚本shell学习笔记

    shell学习基本命令,可以帮助初学者快速掌握较全面的shell脚本知识

    Shell学习笔记

    本文档《Shell学习笔记》详细介绍了Shell脚本编写的基础知识和一些高级技巧,包含了多个主题,例如终端操作、环境变量使用、数学运算、文件描述符、数组和关联数组、别名使用、终端信息获取、日期和时间处理、脚本...

    Shell学习笔记总结

    Shell 学习笔记总结 本资源是 Shell 学习笔记的总结,涵盖了 Shell 的基本概念、类型、变量、进程、权限、管道、POSIX、grep、sed、awk 等命令和编程语言。 一、 Shell 的类型和特点 Shell 是一种命令行界面,...

    Shell脚本学习笔记

    自己整理的Shell脚本学习笔记,脚本实例可直接运行:1. 变量和字符串;2. 传递参数;3. 基本运算符;4. echo&printf;&test;;5. 流程控制;6. 函数;7. 输入输出重定向&文件嵌入

    shell编程学习笔记

    shell脚本成分 开头和注释: shell脚本的开头,用来解释shell程序,包括:#!/bin/bash、#!/bin/csh、#!/bin/tcsh、#!/bin/pdksh,一般用#!/bin/bash。。 shell脚本中的注释,以#开头的...

    shell脚本学习笔记

    完成后的脚本可以按照三种方式执行: 1. 输入定向到脚本:通过`bash 脚本名`的方式,Shell会从指定的文件中读取命令并执行,但这种方式无法传递参数。 2. 以脚本名作为参数:使用`bash 脚本名 [参数]`的形式,可以...

    Linux教程+ shell学习笔记 + Shell脚本常用命令+shell脚本100例资源合集

    本文整理了一份Linux shell学习笔记及基本命令合集,包含了LINUX常用操作命令和命令行编辑快捷键、shell基本命令,Linux相关使用配置教程等,需要的朋友可下载试试! shell是一个用C语言编写的程序,它是用户使用...

    shell学习笔记(常用shell命令介绍和用例)

    ### Shell学习笔记(常用Shell命令介绍与用例) #### 一、引言 Shell作为Linux和Unix操作系统的重要组成部分,提供了一种与系统交互的方式。本文档旨在为初学者和有一定经验的用户提供一份全面的Shell命令学习笔记...

    shell script编程学习笔记

    ### Shell Script 编程学习笔记 #### 一、Shell 脚本初窥 ##### 示例: ```bash #!/bin/sh # 第1行:指定脚本解释器(声明使用的shell名称),这里是用/bin/sh做解释器的。“#!”是一个约定的标记 cd ~ # 第2行:...

    Linux Shell学习笔记

    Linux shell是学习Linux必须掌握的脚本之一,该文档为本人学习Shell脚本时总结的一些基础知识,包括Shell的语法、简单示例和总结,欢迎下载学习。

    Shell基础学习笔记

    Shell基础学习笔记

    shell学习笔记(自理版)

    Shell学习笔记(自理版) shell学习笔记的主要内容是 shell 变量、环境变量、条件判断语句、循环语句等。下面对这些知识点进行详细的解释。 一、shell 变量 shell 变量可以分为系统变量和环境变量。系统变量...

    Linuxshell学习笔记Shell脚本常用命令中文版最新版本

    本平台精心编撰了一份涵盖Linux shell学习要点及基础命令的笔记,旨在为学习者提供一个全面的资源库。该笔记不仅囊括了Linux操作系统中常用的操作命令、命令行编辑的快捷键技巧,还详细介绍了shell的基本命令和相关...

    linux shell个人学习笔记,绝对极品

    这个个人学习笔记集合了作者在深入理解Linux Shell过程中的经验与精华,旨在帮助读者更好地掌握这一强大的命令行工具。 首先,让我们了解一下Shell的基础知识。在Linux中,Shell是一个命令解释器,它接收用户的输入...

    Shell 学习笔记 word ppt

    Shell学习笔记主要关注的是Linux或Unix系统中的命令行界面(CLI)交互,特别是Shell脚本编程。Shell是一种命令解释器,允许用户通过命令行输入来执行操作系统任务,同时,它也是一种编程语言,可以编写自动化脚本来...

    shell学习笔记-2018-01-09

    ### Shell学习笔记 #### Shell的发展与分类 Shell作为Unix及类Unix系统(包括Linux)的主要用户界面之一,其历史可以追溯到20世纪70年代。最初,Shell仅仅作为一个简单的命令解释器,随着时间的推移,它发展成为了...

Global site tag (gtag.js) - Google Analytics