




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第1 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四1第第2 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四项目项目4 Shell基本应用基本应用第第3 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四3Shell命令概述及基本命令命令概述及基本命令Shell的变量的变量Bash的常用功能的常用功能正则表达式、管道与重定向正则表达式、管道与重定向程序编辑器程序编辑器vimShell基本脚本编程(概念,基本脚本编基本脚本编程(概念,基本脚本编程和脚本运行)程和脚本运行)项目项目4 Shell的基本应用
2、的基本应用第第4 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四4Shell的作用及常见种类的作用及常见种类Shell的作用的作用 命令解释器,命令解释器,“翻译官翻译官”介于操作系统内核与用户之间,负责解释命令行介于操作系统内核与用户之间,负责解释命令行Shell计算机用户应用程序Linux内核输入输入控制控制系统硬件输出输出第第5 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四5Shell的作用及常见种类的作用及常见种类KshBshCshBashZsh兼具兼具Bsh的语法和的语法和Csh的交互特性的交互特性 70年代中期诞生于
3、贝年代中期诞生于贝尔实验室,有较强的尔实验室,有较强的脚本编程功能脚本编程功能80年代早期诞生于加利福年代早期诞生于加利福尼亚大学尼亚大学 ,使用,使用C语言风语言风格,命令交互方便格,命令交互方便Bsh的升级版,的升级版,Linux系系统中的默认统中的默认Shell兼具各种兼具各种Shell程序优点,交程序优点,交互式操作效率更高互式操作效率更高 第第6 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四6Shell环境的切换环境的切换如何切换如何切换Shell环境环境 临时切换:直接执行其他临时切换:直接执行其他Shell程序,例如程序,例如ksh、zsh等等
4、更改用户登录更改用户登录Shell:l 需修改 /etc/passwd 文件中用户记录的最后一个字段l 或执行:usermod -s Shell程序路径 用户名登录登录Shell指指用户每次登录系统后自动加载的用户每次登录系统后自动加载的Shell程序,程序,大多数大多数Linux系统系统采用采用 /bin/bash 作为默认登录作为默认登录Shell/etc/shells 文件记录了系统支持的有效登录文件记录了系统支持的有效登录Shellrootlocalhost # cat /etc/shells/bin/sh/bin/bash/sbin/nologin/bin/tcsh/bin/csh/
5、bin/ksh 第第7 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四7lxxbogon 桌面桌面$ cdlxxbogon $ grep lxx /etc/passwdlxx:x:500:500:liuxinxin:/home/lxx:/bin/bashlxxbogon $ echo $SHELL/bin/bashlxxbogon $ chshChanging shell for lxx.密码:密码:New shell /bin/bash: /bin/cshShell changed.lxxbogon $ grep lxx /etc/passwdlxx:x:50
6、0:500:liuxinxin:/home/lxx:/bin/cshShell环境的切换环境的切换原原shell更改更改shell命令命令更改后的更改后的shell第第8 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四8Linux命令的分类命令的分类Linux命令命令用于用于实现某一类功能的指令或程序实现某一类功能的指令或程序 命令的执行依赖于解释器程序(例如:命令的执行依赖于解释器程序(例如:/bin/bash)Linux命令的分类命令的分类内部命令内部命令:属于:属于Shell解释器的一部分解释器的一部分外部命令外部命令:独立于:独立于Shell解释器之外的
7、程序文件解释器之外的程序文件第第9 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四9Linux命令行的格式命令行的格式Linux命令的通用命令格式命令的通用命令格式命令字命令字 选项选项 参数参数选项及参数的含义选项及参数的含义选项:用于调节命令的具体功能选项:用于调节命令的具体功能 以以 “-”引导短格式选项(单个字符),例如引导短格式选项(单个字符),例如“-l” 以以“-”引导长格式选项(多个字符),例如引导长格式选项(多个字符),例如“-color” 多个短格式选项可以写在一起,只用一个多个短格式选项可以写在一起,只用一个“-”引导,引导,例如例如“-a
8、l”与与“-l -a”的功能完全相同的功能完全相同参数:命令操作的对象,如文件、目录名等参数:命令操作的对象,如文件、目录名等rootlocalhost # ls -l /home总计总计 8drwx- 2 benet benet 4096 09-08 08:50 benet第第10 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四10Linux命令行的格式命令行的格式命令行编辑的几个辅助操作命令行编辑的几个辅助操作Tab键:自动补齐键:自动补齐反斜杠反斜杠“”:强制换行:强制换行快捷键快捷键 Ctrl+U:清空至行首:清空至行首快捷键快捷键 Ctrl+K:清空至
9、行尾:清空至行尾快捷键快捷键 Ctrl+L:清屏:清屏快捷键快捷键 Ctrl+C:取消本次命令编辑:取消本次命令编辑第第11 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四11获得命令帮助获得命令帮助内部命令内部命令help查看查看Bash内部命令的帮助信息,内部命令的帮助信息,如如 help cd命令的命令的“-help” 选项选项适用于大多数外部命令适用于大多数外部命令 如如 ls -help使用使用man命令阅读手册页命令阅读手册页使用使用“”、“”方向键滚动文本方向键滚动文本使用使用Page Up和和Page Down键翻页键翻页 按按Q或或q键退出阅读
10、环境、按键退出阅读环境、按“/”键后查找内容键后查找内容使用使用info命令阅读信息页命令阅读信息页第第12 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四12文件和目录管理文件和目录管理目录操作命令目录操作命令pwd、cd、ls、mkdir、du文件操作命令文件操作命令touch、file、cp、rm、mv、which、find、ln文件内容操作命令文件内容操作命令cat、more、lesshead、tail、wc、grep归档及压缩命令归档及压缩命令gzip、bzip2、tar第第13 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日
11、星期四13目录操作命令目录操作命令 pwd、cdpwd命令命令用途:查看工作目录用途:查看工作目录(Print Working Directory)cd命令命令用途:切换工作目录(用途:切换工作目录(Change Directory)格式:格式:cd 目录位置目录位置rootlocalhost # cd /etc/httpdrootlocalhost httpd# cd confrootlocalhost conf# cd benetrootlocalhost benet# pwd/home/benetrootlocalhost zhangsan# ls -dl ./jerrydrwx- 2
12、jerry jerry 4096 09-14 21:50 ./jerry绝对路径绝对路径相对路径相对路径相对路径相对路径第第14 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四14目录操作命令目录操作命令 pwd、cdcd命令命令第第15 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四15目录操作命令目录操作命令 lsls命令命令用途:列表(用途:列表(List)显示目录内容)显示目录内容 格式:格式:ls 选项选项. 目录或文件名目录或文件名常用命令选项常用命令选项-l :以长格式显示,:以长格式显示,ls命令默认显示短格式命令
13、默认显示短格式-a:显示所有子目录和文件的信息,包括隐藏文件:显示所有子目录和文件的信息,包括隐藏文件-d:显示目录本身的属性:显示目录本身的属性-A:类似于:类似于“-a”,但不显示当前目录,但不显示当前目录“.”和父目录和父目录“.”的信息的信息-h:以更易读的字节单位(:以更易读的字节单位(K、M等)显示信息等)显示信息-R:递归显示内容:递归显示内容-color:以颜色区分不同类型文件:以颜色区分不同类型文件第第16 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四16rootlocalhost # ls install.log*install.log i
14、nstall.log.syslogrootlocalhost # ls -lh install.?-rw-r-r- 1 root root 37K 09-08 16:46 install.logrootlocalhost # ls -a. .chewing .gnome install.log.syslog .tcshrc. .cshrc .gnome2 .lesshst .Trash rootlocalhost # alias myls=ls -alhrootlocalhost # myls /usr/src总计总计 32Kdrwxr-xr-x 4 root root 4.0K 09-08
15、16:40 .drwxr-xr-x 14 root root 4.0K 09-08 16:28 .drwxr-xr-x 3 root root 4.0K 09-08 16:33 kernels 目录操作命令目录操作命令 ls星号通配符星号通配符问号通配符问号通配符定义命令别名定义命令别名第第17 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四17目录操作命令目录操作命令 mkdirmkdir命令命令用途:创建新的目录(用途:创建新的目录(Make Directory) 格式:格式:mkdir -p /路径路径/目录名目录名-p 选项用于创建选项用于创建多级目录多
16、级目录rootlocalhost # mkdir -p mydir/level1/level2rootlocalhost # ls -R mydirmydir:level1mydir/level1:level2mydir/level1/level2:第第18 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四18目录操作命令目录操作命令 mkdirrmdir命令命令用途:删除目录用途:删除目录格式:格式:rmdir -p /路径路径/目录名目录名-p 选项表示子目录删除后,选项表示子目录删除后,父目录为空也一同被删除父目录为空也一同被删除rootlocalhost
17、# rmdir -p mydir/level1/level2rootlocalhost # ls -R mydirls: 无法访问无法访问mydir: 没有那个文件或目录没有那个文件或目录第第19 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四19目录操作命令目录操作命令 dudu命令命令用途:统计目录及文件的空间占用情况用途:统计目录及文件的空间占用情况(estimate file space usage) 格式:格式:du 选项选项. 目录或文件名目录或文件名常用命令选项常用命令选项-a:统计:统计时包括所有的文件,而不时包括所有的文件,而不仅仅只统计目录仅
18、仅只统计目录 -h:以更易读的字节单位(:以更易读的字节单位(K、M等)显示信息等)显示信息-s:只统计每个参数所占用空间总的大小:只统计每个参数所占用空间总的大小rootlocalhost # du -sh /etc/httpd/184K /etc/httpd/第第20 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四20文件操作命令文件操作命令 touch、filetouch命令命令用途:新建空文件,或更新文件时间标记用途:新建空文件,或更新文件时间标记格式:格式:touch 文件名文件名file命令命令用途:查看文件类型用途:查看文件类型格式:格式: fil
19、e 文件名文件名rootlocalhost # touch file1.txt file2.docrootlocalhost # ls file*file1.txt file2.docrootlocalhost # file /bin/ls/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for 第第21 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四21文件操
20、作命令文件操作命令 cpcp命令命令用途:复制(用途:复制(Copy)文件或目录)文件或目录格式:格式:cp 选项选项. 源文件或目录源文件或目录 目标文件目标文件或目录或目录常用命令选项常用命令选项-r:递归复制整个目录树:递归复制整个目录树-p:保持源文件的属性不变:保持源文件的属性不变-f:强制覆盖目标同名文件或目录:强制覆盖目标同名文件或目录-i:需要覆盖文件或目录时进行提醒:需要覆盖文件或目录时进行提醒-b 若存在同名文件,覆盖前备份原文件若存在同名文件,覆盖前备份原文件lxxbogon 桌面桌面$ mkdir -p mydir/level1/level2lxxbogon 桌面桌面$
21、 touch file1.txt file2.doclxxbogon 桌面桌面$ cp -rf file1.txt mydir/level1/level2lxxbogon 桌面桌面$ mv -f file2.odt mydir/level1/level2lxxbogon 桌面桌面$ rm -rf mydir/level1/level2/file1.txt第第22 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四22文件操作命令文件操作命令 rmrm命令命令用途:删除(用途:删除(Remove)文件或目录)文件或目录格式:格式:rm 选项选项. 文件或目录文件或目录
22、常用命令选项常用命令选项-f:强行删除文件或目录,不进行提醒:强行删除文件或目录,不进行提醒-i:删除文件或目录时提醒用户确认:删除文件或目录时提醒用户确认-r:递归删除整个目录树:递归删除整个目录树第第23 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四23文件操作命令文件操作命令 mvmv命令命令用途:移动(用途:移动(Move)文件或目录)文件或目录 若如果目标位置与源位置相同,则相当于若如果目标位置与源位置相同,则相当于改名格式:格式:mv 选项选项. 源文件或目录源文件或目录 目标文件目标文件或目录或目录第第24 页页LinuxLinux系统管理系统管
23、理2021年年11月月4日星期四日星期四24文件操作命令文件操作命令 whichwhich命令命令用途:查找用途:查找Linux命令文件并显示所在的位置命令文件并显示所在的位置 搜索范围由搜索范围由 PATH 环境变量指定环境变量指定格式:格式:which 命令或程序名命令或程序名rootlocalhost # which mkdir/bin/mkdirrootlocalhost # echo $PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bi
24、n:/root/binrootlocalhost # which cd/usr/bin/which: no cd in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)cdcd是是ShellShell内部命令,因内部命令,因此查不到对应文件此查不到对应文件第第25 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四补充补充echo命令命令第第26 页页LinuxLinux系统管理系统管理2021年年
25、11月月4日星期四日星期四26文件操作命令文件操作命令 findfind命令命令用途:用于查找文件或目录用途:用于查找文件或目录格式:格式:find 查找范围查找范围 查找条件查找条件常用查找范围常用查找范围-name:按文件名称查找:按文件名称查找-size:按文件大小查找:按文件大小查找-user:按文件属主查找:按文件属主查找-type:按文件类型查找:按文件类型查找rootbogon # find / -name named*/selinux/booleans/named_write_master_zones/usr/share/man/ru/man8/named_selinux.8.
26、gz/usr/share/man/man8/named_selinux.8.gz/usr/share/vim/vim72/syntax/named.vimrootbogon # find / -name httpd.conf/etc/httpd/conf/httpd.conf第第27 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四27文件操作命令文件操作命令 lnln命令命令用途:为文件或目录建立链接(用途:为文件或目录建立链接(Link) 格式:格式:ln -s 源文件或目录源文件或目录 链接文件或目标目链接文件或目标目录录常用命令选项常用命令选项-s:建立符
27、号链接文件(省略此项则建立硬链接):建立符号链接文件(省略此项则建立硬链接)关于链接文件关于链接文件符号链接符号链接:指向原始文件所在路径,又称为软链接:指向原始文件所在路径,又称为软链接硬链接硬链接:指向原始文件对应的数据存储位置:指向原始文件对应的数据存储位置不能为目录建立硬链接文件不能为目录建立硬链接文件硬链接与原始文件必须位于同一分区(文件系统)硬链接与原始文件必须位于同一分区(文件系统)中中第第28 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四第第29 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四29文件内容操作命令
28、文件内容操作命令 catcat命令命令用途:显示出文件的全部内容用途:显示出文件的全部内容rootlocalhost # cat /etc/host.conforder hosts,bindrootlocalhost # cat /etc/resolv.confsearch localdomainrootlocalhost # cat /etc/resolv.conf /etc/host.confsearch localdomainorder hosts,bind第第30 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四30文件内容操作命令文件内容操作命令 mor
29、e、lessmore命令命令用途:全屏方式分页显示文件内容用途:全屏方式分页显示文件内容交互操作方法:交互操作方法: 按按Enter键向下逐行滚动键向下逐行滚动 按空格键向下翻一屏、按按空格键向下翻一屏、按b键向上翻一屏键向上翻一屏 按按q键退出键退出less命令命令用途:与用途:与more命令相同,但扩展功能更多命令相同,但扩展功能更多交互操作方法:交互操作方法: 与与more命令基本类似,但个别操作会有些出入命令基本类似,但个别操作会有些出入第第31 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四31文件内容操作命令文件内容操作命令 head、tailhea
30、d命令命令用途:查看文件开头的一部分内容(默认为用途:查看文件开头的一部分内容(默认为10行)行)格式:格式:head -n 文件名文件名tail命令命令用途:查看文件结尾的少部分内容(默认为用途:查看文件结尾的少部分内容(默认为10行)行)格式:格式:tail -n 文件名文件名 tail -f 文件名文件名rootlocalhost # tail -2 /var/log/messagesSep 8 15:49:29 localhost scim-bridge: Cleanup, done. Exitting.Sep 8 15:49:29 localhost Cleanup, done. E
31、xitting.第第32 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四32文件内容操作命令文件内容操作命令 wcwc命令命令用途:统计文件中的单词数量(用途:统计文件中的单词数量(Word Count)等信息等信息 格式:格式:wc 选项选项. 目标文件目标文件.常用命令选项常用命令选项-l:统计行数:统计行数-w:统计单词个数:统计单词个数 -c:统计字节数:统计字节数rootlocalhost # wc /etc/hosts 4 23 185 /etc/hosts4 4行,行,2323个单词,个单词,185185个字节个字节第第33 页页LinuxLinu
32、x系统管理系统管理2021年年11月月4日星期四日星期四33文件内容操作命令文件内容操作命令 grepgrep命令命令用途:在文件中查找并显示包含指定字符串的行用途:在文件中查找并显示包含指定字符串的行格式:格式:grep 选项选项. 查找条件查找条件 目标文件目标文件常用命令选项常用命令选项-i:查找时忽略大小写:查找时忽略大小写-v:反转查找,输出与查找条件不相符的行:反转查找,输出与查找条件不相符的行 查找条件设置查找条件设置要查找的字符串以双引号括起来要查找的字符串以双引号括起来“”表示以表示以开头,开头,“$”表示以表示以结尾结尾“$”表示空行表示空行第第34 页页LinuxLinu
33、x系统管理系统管理2021年年11月月4日星期四日星期四34归档及压缩命令归档及压缩命令 gzip、bzip2gzip命令、命令、bzip2命令命令用途:制作压缩文件、解开压缩文件用途:制作压缩文件、解开压缩文件格式:格式:gzip -9 文件名文件名. bzip2 -9 文件名文件名. gzip -d *.gz格式的压缩文件格式的压缩文件 bzip2 -d *.bz2格式的压缩文件格式的压缩文件常用命令选项常用命令选项-9:表示高压缩比,多在创建压缩包时用:表示高压缩比,多在创建压缩包时用-d:用于解开已经压缩过的文件:用于解开已经压缩过的文件制作压缩文件制作压缩文件解开压缩文件解开压缩文件
34、第第35 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四35tar命令命令用途:制作归档文件、释放归档文件用途:制作归档文件、释放归档文件格式:格式:tar 选项选项. 归档文件名归档文件名 源文件或目录源文件或目录 tar 选项选项. 归档文件名归档文件名 -C 目标目录目标目录常用命令选项常用命令选项-c:创建:创建 .tar 格式的包文件格式的包文件-x:解开:解开.tar格式的包文件格式的包文件-v:输出详细信息:输出详细信息-f:表示使用归档文件:表示使用归档文件-p:打包时保留原始文件及目录的权限:打包时保留原始文件及目录的权限-t:列表查看包内的文
35、件:列表查看包内的文件归档及压缩命令归档及压缩命令 tar制作归档文件制作归档文件解开归档文件解开归档文件第第36 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四36rootlocalhost # tar jcf test.tar.bz2 /etc/httpd/tar: 从成员名中删除开头的从成员名中删除开头的“/”rootlocalhost # ls -lh test.tar.bz2-rw-r-r- 1 root root 21K 09-09 01:19 test.tar.bz2rootlocalhost # tar jxf test.tar.bz2 -C /
36、tmprootlocalhost # ls -ld /tmp/etc/httpd/drwxr-xr-x 4 root root 4096 09-08 16:37 /tmp/etc/httpd/rootlocalhost # rm -rf /tmp/etc/常用命令选项(续)常用命令选项(续)-C:解包时指定释放的目标文件夹:解包时指定释放的目标文件夹-z:调用:调用gzip程序进行压缩或解压程序进行压缩或解压-j:调用:调用bzip2程序进行压缩或解压程序进行压缩或解压归档及压缩命令归档及压缩命令 tar制作压缩包文件制作压缩包文件释放压缩包文件释放压缩包文件第第37 页页LinuxLinux
37、系统管理系统管理2021年年11月月4日星期四日星期四37Shell的变量的变量环境变量环境变量位置变量位置变量预定义变量预定义变量用户自定义变量(本地变量)用户自定义变量(本地变量)第第38 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四38环境变量环境变量环境变量是用户登录时环境变量是用户登录时Linux系统为用户预先设定系统为用户预先设定好的一类好的一类Shell变量。环境变量的功能是变量。环境变量的功能是设置设置用户在用户在当前当前Shell中的中的工作环境工作环境,包括用户宿主目录、命令,包括用户宿主目录、命令查找路径、用户当前目录等。其特点如下:查找
38、路径、用户当前目录等。其特点如下:名称由名称由大写字母大写字母、数字和其他字符组成,不使用小、数字和其他字符组成,不使用小写字母。写字母。环境变量在系统中拥有固定的含义,环境变量在系统中拥有固定的含义,变量名固定变量名固定。环境变量的初始值在用户登陆后就已经存在,并可环境变量的初始值在用户登陆后就已经存在,并可以以被其他命令读取和使用被其他命令读取和使用环境变量的值由环境变量的值由系统自动维护系统自动维护,无需人工设置,无需人工设置环境变量中的值会随环境变量中的值会随用户状态用户状态的改变而改变。的改变而改变。第第39 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星
39、期四环境变量环境变量使用使用set命令查看环境变量命令查看环境变量 Set、echo常用环境变量常用环境变量 USER UID SHELL HOME PWD PATH PS1 PS2环境变量配置文件环境变量配置文件/etc/bashrc /etc/profile /.bash_profile/.bashrc 第第40 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四查看环境变量查看环境变量查看环境变量查看环境变量 使用使用set命令查看系统中的命令查看系统中的Shell变量,其中大多数变量,其中大多数都是用户的环境变量。都是用户的环境变量。当需要读取某个当需要读取
40、某个Shell变量的值时,尅在变量名前变量的值时,尅在变量名前加加“$”符引用变量的值。符引用变量的值。rootlocalhost # echo $PATH/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/binlxxbogon 桌面桌面$ set | head -10lxxbogon 桌面桌面$ set | more第第41 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四查看环境变量查看环境变量Set命令
41、和命令和echo命令显示环境变量值的区别:命令显示环境变量值的区别:Set命令默认显示当前用户全部命令默认显示当前用户全部Shell变量的名称变量的名称和变量的值和变量的值Echo命令使用变量的名称作为命令参数,执行结命令使用变量的名称作为命令参数,执行结果显示果显示变量的值变量的值Echo命令不能查询系统中有哪些命令不能查询系统中有哪些Shell变量变量第第42 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四42常用环境变量常用环境变量Linux有如下常用环境变量:有如下常用环境变量:USER 当前用户登录名当前用户登录名UID 当前用户的用户号(与当前用户的
42、用户号(与“id-u”命令结果一命令结果一致)致)SHELL 当前用户登录启动的当前用户登录启动的ShellHOME 当前用户的登录目录(宿主目录)当前用户的登录目录(宿主目录)PWD 当前用户所在目录当前用户所在目录PATH 当前用户的命令搜索路径当前用户的命令搜索路径PS1 PS2 命令提示符命令提示符第第43 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四43Shell的环境变量配置文件的环境变量配置文件Linux中用户的环境变量是在用户登录时设置完成中用户的环境变量是在用户登录时设置完成的,环境变量的配置是通过配置文件实现的,环境的,环境变量的配置是通过
43、配置文件实现的,环境变量配置文件可分为变量配置文件可分为全局配置文件全局配置文件和和用户配置文件用户配置文件两种。全局配置文件可在两种。全局配置文件可在/etc/profile和和/etc/bashrc中进行定义中进行定义。且只有管理员。且只有管理员root有权限进行修改和有权限进行修改和设置设置 rootbogon # ls -l /etc/bashrc /etc/profile-rw-r-r-. 1 root root 2620 6月月 30 2010 /etc/bashrc-rw-r-r-. 1 root root 1459 6月月 30 2010 /etc/profile查看用户环境配
44、置文件查看用户环境配置文件第第44 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四44Shell的环境变量配置文件的环境变量配置文件rootbogon # head -7 /etc/profile# /etc/profile# System wide environment and startup programs, for login setup# Functions and aliases go in /etc/bashrc# Its NOT good idea to change this file unless you know what you# ar
45、e doing. Much better way is to create custom.sh shell script in/etc/profile文件负责设置文件负责设置全局的变量全局的变量,应用于所有,应用于所有的用户登录的用户登录Shell 。用户全局变量的设置文件用户全局变量的设置文件“profile”内容内容第第45 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四45Shell的环境变量配置文件的环境变量配置文件rootbogon # head -7 /etc/bashrc# /etc/bashrc# System wide functions an
46、d aliases# Environment stuff goes in /etc/profile# Its NOT good idea to change this file unless you know what you# are doing. Much better way is to create custom.sh shell script in/etc/bashrc文件用于定义文件用于定义全局的函数和别名全局的函数和别名,除了,除了应用于所有用户登录应用于所有用户登录Shell外,也适用于非交互外,也适用于非交互Shell和非登录和非登录Shell。用户全局的函数和别名文件用户全
47、局的函数和别名文件“bashrc”内容内容第第46 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四46Shell的环境变量配置文件的环境变量配置文件Linux中用户配置文件位于用户的宿主目录中,作中用户配置文件位于用户的宿主目录中,作为隐藏文件保存着。文件名是为隐藏文件保存着。文件名是“.bash_profile”和和“.bashrc”。用户可以通过修改这两个隐藏文件。用户可以通过修改这两个隐藏文件来设置自己的环境变量。来设置自己的环境变量。rootbogon # ls -l .bash_profile .bashrc-rw-r-r-. 1 root root
48、176 5月月 20 2009 .bash_profile-rw-r-r-. 1 root root 176 9月月 22 2004 .bashrc查看当前用户环境配置文件查看当前用户环境配置文件第第47 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四47Shell的环境变量配置文件的环境变量配置文件“.bash_profile”文件的作用类似于全局的文件的作用类似于全局的“/etc/profile”文件,但只对用户自身有效。文件,但只对用户自身有效。 “.bash_profile”文件会在用户进行文件会在用户进行Shell登录时运登录时运行,并且会调用执行行,
49、并且会调用执行“.bashrc”文件中的内容。用文件中的内容。用户自己定义的变量可以添加到户自己定义的变量可以添加到“.bash_profile”文文件的末尾。件的末尾。rootbogon # cat .bash_profile# .bash_profile# Get the aliases and functionsif -f /.bashrc ; then. /.bashrcfi# User specific environment and startup programsPATH=$PATH:$HOME/binexport PATH查看本地用户全局变量设置的文件查看本地用户全局变量设置的
50、文件第第48 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四48Shell的环境变量配置文件的环境变量配置文件“.bashrc”文件用于定义函数和别名,作用范围文件用于定义函数和别名,作用范围是当前用户的是当前用户的Shell。用户自定义的内容需要添加在。用户自定义的内容需要添加在文件末尾。文件末尾。rootbogon # cat .bashrc# .bashrc# User specific aliases and functionsalias rm=rm -ialias cp=cp -ialias mv=mv -i# Source global defini
51、tionsif -f /etc/bashrc ; then. /etc/bashrcfi查看本地用户变量和别名设置的文件查看本地用户变量和别名设置的文件第第49 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四49Shell的环境变量配置文件的环境变量配置文件“/etc/skel”目录中保存了初始的用户配置文件模目录中保存了初始的用户配置文件模板,当用户对自己的配置文件进行了错误的设置后板,当用户对自己的配置文件进行了错误的设置后,可以直接将,可以直接将“/etc/skel”目录中的模板文件复制目录中的模板文件复制到用户目录,恢复正确的初始配置。到用户目录,恢复正
52、确的初始配置。lxxbogon 桌面桌面$ cd /etc/skellxxbogon skel$ ls -l .bash_profile .bashrc-rw-r-r-. 1 root root 176 6月月 22 2010 .bash_profile-rw-r-r-. 1 root root 124 6月月 22 2010 .bashrc 本地用户环境变量和别名设置的模板应用本地用户环境变量和别名设置的模板应用第第50 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四50Shell的位置变量的位置变量位置变量又称位置参数,是与位置变量又称位置参数,是与Shel
53、l脚本程序执行时脚本程序执行时所使用的命令参数相对应,命令行中的参数按照从所使用的命令参数相对应,命令行中的参数按照从左到右的顺序复制给位置变量。位置变量名称格式左到右的顺序复制给位置变量。位置变量名称格式为为“$n”,n指的是参数的位置序号。位置变量的指的是参数的位置序号。位置变量的n是从是从1到到9的。的。$0代表所执行命令的名称,属于代表所执行命令的名称,属于预定预定义变量。义变量。Bash环境中单引号(环境中单引号()、双引号()、双引号(”)和反引号()和反引号()3种引号表示的字符串具有不同的功能;单引号种引号表示的字符串具有不同的功能;单引号()中的字符串不进行变量替换,保持字符
54、串的原)中的字符串不进行变量替换,保持字符串的原始值;双引号(始值;双引号(”)中的变量引用会以变量的值来)中的变量引用会以变量的值来替换,并作为字符串的一部分;反引号(替换,并作为字符串的一部分;反引号()引用命)引用命令的执行结果将替换命令本身作为字符串令的执行结果将替换命令本身作为字符串第第51 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四位置变量位置变量 位置变量通常用于在编写脚本时接收用户指位置变量通常用于在编写脚本时接收用户指定的命令参数。定的命令参数。lxxbogon $ vi exam#! /bin/shecho $0=$0echo $1=$1
55、,$2=$2,$3=$3echo $4=$4,$5=$5,$6=$6echo $7=$7,$8=$8,$9=$9:Wqlxxbogon $ chmod u+x examlxxbogon $ cat exam#! /bin/shecho $0=$0echo $1=$1,$2=$2,$3=$3echo $4=$4,$5=$5,$6=$6echo $7=$7,$8=$8,$9=$9“lxxbogon $ ./exam 1 2 3 4 5 6 7 8 9$0=./exam$1=1,$2=2,$3=3$4=4,$5=5,$6=6$7=7,$8=8,$9=9第第52 页页LinuxLinux系统管理系统管
56、理2021年年11月月4日星期四日星期四位置变量位置变量$ ./exam one two tree four five six$0表示命令名称表示命令名称$0属于预定义变量属于预定义变量$0不属于位置变量不属于位置变量$1表示第表示第1个命令参数个命令参数$2表示第表示第2个命令参数个命令参数$3表示第表示第3个命令参数个命令参数$n表示第表示第n个命令参数个命令参数第第53 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四预定义变量预定义变量 变量名变量名含义含义$# 表示位置参数的数量表示位置参数的数量 $*表示所有位置参数的内容表示所有位置参数的内容$?表示
57、命令执行后返回的状态,用于检查上一个命表示命令执行后返回的状态,用于检查上一个命令的执行是否正确;在令的执行是否正确;在Linux中,命令退出状态中,命令退出状态为为0表示命令正确执行,任何非表示命令正确执行,任何非0值表示命令执行值表示命令执行错误错误 $表示当前进程的进程号表示当前进程的进程号 $!表示后台运行的最后一个进程号表示后台运行的最后一个进程号 $0表示当前执行的进程名表示当前执行的进程名 第第54 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四用户自定义变量用户自定义变量 自定义变量的设置自定义变量的设置$ DAY=sunday自定义变量的查看与
58、引用自定义变量的查看与引用 $ echo $DAY 自定义变量的输出自定义变量的输出 $ export DAY自定义变量的清除自定义变量的清除 $ unset DAY 第第55 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四用户自定义变量用户自定义变量 lxxbogon 桌面桌面$ DAY=Sundaylxxbogon 桌面桌面$ echo $DAYSundaylxxbogon 桌面桌面$ bashlxxbogon 桌面桌面$ echo $DAYlxxbogon 桌面桌面$ exitexitlxxbogon 桌面桌面$ echo $DAYSundaylxxbog
59、on 桌面桌面$ export DAYlxxbogon 桌面桌面$ bashlxxbogon 桌面桌面$ echo $DAYSunday变量赋值变量赋值查看变量查看变量进入子进入子ShellShell查看子查看子ShellShell变量变量输出变量输出变量进入子进入子ShellShell查看子查看子ShellShell变量变量第第56 页页LinuxLinux系统管理系统管理2021年年11月月4日星期四日星期四Shell变量赋值小结变量赋值小结 1. 变量与变量内容以等号变量与变量内容以等号( = )来连结;来连结;2. 等号两边不能直接接空格符;等号两边不能直接接空格符; 3. 变量名称只
60、能是英文字母与数字,但是数字不能变量名称只能是英文字母与数字,但是数字不能是开头字符;是开头字符; 4. 若在赋值中有空格符可以使用双引号或单引号来若在赋值中有空格符可以使用双引号或单引号来将变量内容结合起来,但须要特别留意,将变量内容结合起来,但须要特别留意, 双引号内双引号内的特殊字符可以保有变量特性,但是单引号内的特的特殊字符可以保有变量特性,但是单引号内的特殊字符则仅为一般字符;殊字符则仅为一般字符;5. 必要时需要以反斜杠(必要时需要以反斜杠()来将特殊符号)来将特殊符号 ( 如如 Enter, $, , 空格符空格符, 等等 ) 变成一般符号;变成一般符号;第第57 页页Linux
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省江门市第九中学2024-2025学年九年级上学期期中考试化学试卷(含答案)
- 电生理知识培训课件
- 电焊课件模板
- 北中高三期末考试试卷及答案
- 北京高考化学考试真题及答案
- 3-Oxoeicosa-cis-cis-11-14-dienoyl-CoA-3-Oxoeicosa-cis-cis-11-14-dienoyl-coenzyme-A-生命科学试剂-MCE
- 北海物理中考试卷真题及答案
- 高温用车安全知识培训课件
- 保利地产入职考试试题及答案
- 中考山脉考试题及答案
- 阿氏圆教学课件
- 陇南市成县县属国有企业招聘笔试真题2024
- 环保行业成本管理制度
- 内蒙古自治区“十五五”农牧业发展计划
- 中等职业学校幼儿保育专业《婴幼儿行为观察与引导》课程标准
- (2025)事业单位考试(面试)试题与答案
- 沈阳地铁入职笔试题目及答案
- 产后耻骨护理
- 杜甫草堂介绍
- 影响购房者决定的心理因素研究
- 汽车托运协议书
评论
0/150
提交评论