1、shell基本参数 #cat /etc/shells 系统提供的shell位置 #bsh、csh、ksh、bash 改变root用户的shell环境 #chsh 改变普通用户的shell环境 #more /etc/passwd 查看所有用户的shell环境 2、shell变量 2.1、环境变量 #set | more 查看环境变量 2.2、常用环境变量介绍 #echo $USER 显示当前用户登录名 #echo $UID 显示当前用户的用户号 #echo $SHELL 显示当前用户的登陆Shell #echo $HOME 显示当前用户的宿主目录 #echo $PWD 显示当前用户所在的目录 #echo $PATH 表示当前用户的命令搜索路径 #echo $PS1 显示当前用户的主提示符 #echo $PS2 显示当前用户的辅助提示符 2.3、环境变量配置文件 #ls -l /etc/bashrc /etc/profile 显示环境变量的全局配置文件 "bashrc"文件用于定义全局的函数和别名,文件的内容除了为系统中所有登录用户提供设置外,也适用于非交互Shell和非登录Shell "profile"文件负责设置全局的环境,并应用于所有的用户登录Shell #ls -l /home/username/.bash_profile /home/username/.bashrc 显示用户username的配置文件 #cd /etc/skel 进入初始的用户配置文件 #cp .bash_logout .bash_profile .bashrc .emacs .gtkrc /home/username 复制用户的初始配置文件到用户username的宿主目录下(当用户对自己的配置文件设置出错时使用) 2.4、位置变量 格式:$n n从1到9 单引号(''):不进行任何的变量替换,保持字符串的原始值 双引号(""):以变量的值来替换,并作为字符串的一部分 反引号(``):用于进行命令替换,引号中命令的执行结果将替换命令本身作为字符串 2.5、预定义变量 #echo $# 表示位置参数的变量 #echo $* 表示位置参数的内容 #echo $? 表示命令执行后返回的状态,用于检查一个命令的执行是否正确;在Linux中,命令退出状态为0表示命令正确执行,任何非0值表示命令执行错误 #echo $$ 表示当前进程的进程号 #echo $! 表示后台运行的最后一个进程号 #echo $0 表示当前执行的进程名 2.6、用户自定义变量 #变量名=变量值 DAY=Sunday #echo $变量名 echo $DAY #unset -f -v name 2.7、Bash常用功能 #history 历史命令查看 #history -c 命令历史清除 2.8、命令别名 #alias 命令='新命令' alias ll='ls -l' 使用ll别名更换ls -l命令 #unalias -a name 取消命令别名 #cd /etc/profile.d/ 查看系统别名定义文件 3、管道与重定向 3.1、输入重定向 #wc /etc/passwd 计算文件/etc/passwd中的字符数、单词数和行数 #wc < /etc/passwd 将"/etc/passwd"文件中的内容输入重定向到WC命令中 3.2、输出重定向 #cat /etc/passwd >file 将/ect/passwd下的内容覆盖到file中 #cat /etc/passwd >>file 将/etc/passwd下的内容追加到file中 #aaa 2>errfile 将aaa命令显示的错误结果输入到errfile中 #ls afile bfile &>allfile 将标准输出和错误输出重定向到同一个文件 #ls /etc/passwd/ | head -5 显示passwd中前5行内容 4、Shell脚本 #ls -l /etc/init.d/目录中存在着数量相当多的系统服务启动程序,这些程序全部都是Shell脚本文件,可以使用file命令查询这些文件的类型 #bash *.sh 使用shell命令执行脚本 #. /home/techer/filename.sh 执行filename.sh 本文出自 “小诺的Linux开源技术博客” 博客,请务必保留此出处http://dreamfire.blog.51cto.com/418026/159512 (责任编辑:IT) |