资源预览内容
第1页 / 共53页
第2页 / 共53页
第3页 / 共53页
第4页 / 共53页
第5页 / 共53页
第6页 / 共53页
第7页 / 共53页
第8页 / 共53页
第9页 / 共53页
第10页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
,计算机系 罗海波luo-hbneusoft.com,第16讲 shell变量的补充,上讲内容,掌握shell变量的应用(二):1、一些环境变量的说明2、其他所有的变量说明3、自定义变量转成环境变量4、语系文件的变量5、变量键盘读取与声明6、文件系统及程序的限制关系7、附加的变量设置功能,复习1,历史命令的条数查看、设置需要用到那些命令和变量?1分输入提示符的查看、设置需要用到哪个命令和变量?1分如何查看当前linux所支持的语系? 1分,env HISTSIZEset PS1locale -a,复习2,提示符为input,需要在10秒钟内键盘输入变量test内容为gogogogo。1分声明一个运算变量cc=2+5+3,并显示出这个变量的结果。1分说出ulimit的作用。1分,read p “input” t 10 testdeclare i cc=2+5+3echo $cc,ulimit命令是用来限制用户的某些系统资源,包括可以打开的文件数量、可以使用的CPU时间、可以使用的内存总量等。,本讲内容,1、掌握命令别名2、掌握历史命令3、了解登录消息显示数据4、熟悉环境设置文件5、熟悉终端的环境设置6、熟悉通配符与特殊符号,1、命令别名,windows中cls是清除屏幕的信息,而linux中清除屏幕信息的命令名则是clear,如何让clear=cls呢?我们可以使用命令别名。,命令别名的设置格式alias 别名=命令参数,举个例子,如果需要查询隐藏文件,并且需要列出详细的信息,还需要将这些信息一页一页的翻着来看。可用语句ls al | more,当然上面的命令需要输入几个单词,那如果想简化怎么办?那么命令别名就可以用上派场。alias lm=ls al |more取消别名设置unalias lm,2、历史命令,记录曾经做过的操作就是历史命令。历史命令格式如下3类:history n或Histroy -c或history -raw histfilesn,数字,表示列出最近的n行命令,-c,将当前shell中的所有的history内容全部清除。-a,将当前新增的history命令加入histfiles中,若没有加入histfiles,则默认写入/.bash_history,-r,将histfiles的内容读到当前shell的历史记忆中。-w,将当前的历史记忆内容写入histfiles中。,练习,列出当前内存的所有历史记忆#history左边的是命令在这个shell的代码右边显示命令本身的内容,列出当前最近的3个命令#history 3立刻将当前数据写入histfiles中# history w此时默认写入/.bash_history#echo $HISTSIZE,历史命令的快捷方式举例,3、登录消息显示数据,当我们用终端接口(tty1-tty6)登录的时候会有几行类似下面的字符:,这些字符串叫做登录消息,保存在/etc/issue中,可以人为的进行设置。远程登录的信息则是保存在/etc/issue.net中。,另外一个登录消息提示内容保存在/etc/motd中。用于提示用户系统需要做那些业务。例如:当系统需要在某天进行调试,并需要提示登录的用户一些信息的时候,可以进行如下操作,#vi /etc/motd 输入以下信息:hello everyone,Our server will be maintained at 2009/12/31 0:0024:00Please dont login at that time.保存(用:wq!)Ctrl+alt+f1(终端接口登录方式登录,可以看到上面的提示),4、环境设置文件,4.1系统设置值4.2个人设置值4.3设置文件的读取顺序4.4如何让设置文件立即生效4.5登录shell与非登录shell,4.1系统设置值,有几个系统文件,每次登录的时候,它们就已经帮我们确定环境设置。语系数据# cat /etc/sysconfig/i18n,重要变量PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC的配置/etc/profile还规划出目录/etc/profile.d及文件/etc/inputrc,目录/etc/profile.d/*.sh针对bash及C-shell规范了一些数据。/etc/bashrc确定umask功能,同时确定提示符内容(PS1),/etc/man.config或/etc/manpath.config规定在使用man的时候,该去哪里查看数据的设置路径。生效方式:先注销,再登陆即可,4.2个人设置值,个人设置值一般存放在家目录的隐藏文件中。/.bash_profile、/bash_login、/.profile这三个文件只要一个即可,当bash启动时会依次的去寻找这三个文件。,/.bashrc一般是存储个性化设置的最终配置文件,例如命令别名、路径等等。/.bash_history历史命令的存储文件,每次运行bash的时候,会先读取这个文件。,/.bash_logout这个文件存储了当用户注销系统的时,用户需要先处理的一些业务。,4.3设置文件的读取顺序,首先,读取/etc/profile,再根据/etc/profile的内容区读取其他附件的设置文件,例如/etc/profile.d与/etc/inputrc等设置文件。,其次,根据不同的用户,到用户家目录去读取/.bash_profile或/bash_login或/.profile等设置文件。最后,根据不同用户区读取/.bashrc。,4.4如何让设置文件立即生效,两种方法:第一种,先logout,如何重新login到bash内。第二种,用命令读到shell环境#source file或. file例如#source /.bashrc,4.5登录shell与非登录shell,登录shell就是当用户登录linux系统时,所取得的那个shell,例如,进入图形界面X window。非登录shell就是登录系统后,再去执行其他shell,其他shell就是非登录shell,例如,图形界面下的“打开终端”。,登录shell,会读取/.bash_profile、/bash_login、/.profile这三个文件。非登录shell读取的仅有/.bashrc。,5、终端的环境设置,列出所有的按键与按键内容#stty a表示ctrl按键,intr=C表示运用ctrl+C键来实现。,自定义设置终端热键需要ctrl+H键进行删除字符操作#stty erase h,除了stty之外,bash还有自己的一些终端设置值,利用set进行设置。,练习,显示当前所有的set设置值# echo $-(结果:himBH)设置“若使用未定义变量时,报错” rootlhb # set -urootlhb # echo $sx-bash: sx: unbound variable,执行前显示该命令内容rootlhb # echo $HOME+ echo /root/root+ echo -ne 0330;rootlhb:,6、通配符与特殊符号,例子,ls test*表示后面不论接几个字符都行ls test?*表示后面一定要接一个字符ls test?表示一定要接3个字符,cp test1-5 /tmp将test1、test2、test3、test4、test5若存在的话,就复制到/tmp。,cp test!1-5 /tmp只要不是test1、test2、test3、test4、test5的其他test?若存在的存在话,就复制到/tmp。,只要文件名里含有至少一个大写字母时,就可以将文件复制。cp *A-Z* /tmp这里表示一个字符,-表示范围,要找出/etc下所有含数字的文件ls ald /etc/*0-9*如果只想找含有3及5的文件ls ald /etc/*35*,不想显示出小写字母开头的文件ls ald /etc/ !a-z*,Thank you!谢谢!,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号