shell编程之shell字符

Posted 锦衣admin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell编程之shell字符相关的知识,希望对你有一定的参考价值。

shell编程之shell字符

shell字符

shell基本字符说明:

基本字符说明:
	#l ! :执行历史命令。如:!100 就是执行历史命令的第100条;!! 是执行上一条命令
	#l $ :变量中取内容符号
	#l \\ :转义字符。不跟运算是是转义字符

	#l + - * \\ % :运算符。对应 加 减 乘 除 取余数
	

	#l & :后台执行。将命令放在后台运行
	#l ; :分号可以在shell中一行执行多条命令,命令之间用分号";" 分割。如:echo -n "today is:";date +%F


	#l `` :反引号,在命令中执行命令。如:echo "today is `date +%F`"(注意不要使用单引号)
	
	#l ' ' :单引号,脚本中的字符串要用单引号引来,但不能解析单引号内的变量
	#l " " : 双引号,脚本中出现的字符串可以用双引号引起来,但是双引号能够解析双引号的变量

备注:单引号和引号的区别:单引号不解析变量,双引号解析变量

通配符说明:

通配符说明:
	#l ~ :家目录。如:cd ~ 代表回到用户家目录
	#l * :匹配所有,0或多个任意字符。星号是shell中的通配符(通过转义符将星号转义成通配符:\\*
	
	#l ? :匹配除回车以外的任意一个字符。问号是shell中的通配符
			
	#l [list] :匹配 [list] 中的任意单个字符
	
		#l [^list] :上一个选项的取反,只能针对单个字符=>	两者相等
		#l [!list] :匹配除 [!list] 中的任意单个字符

	#l {string1,string2,...} :匹配tring1,string2或更多字符串

	备注:?[] 只匹配一个字符


演示:
	# rm -rf file??			=>	? 匹配单个字符,即匹配10-99
		[root@server ~]# touch file{1..99}
		[root@server ~]# rm -rf file??
		[root@server ~]# ls
			file1  file2  file3  file4  file5  file6  file7  file8  file9

	# rm -rf file[3-9]		=>	只能匹配删除单个字符
		[root@server ~]# touch file{1..9}
		[root@server ~]# rm -rf file[3-9]
		[root@server ~]# ls
			file1  file2

	# rm -rf file{4..99}		=>	可以删除多个连续文件
		[root@server ~]# touch file{1..99}
		[root@server ~]# rm -rf file{4..99}
		[root@server ~]# ls
			file1  file2  file3

重定向说明:

重定向说明:
	#l > :覆盖输入
	#l >> :追加输入

	#l < :输出
	#l << :追加输出,在交互式中用到
		备注:需要在追加输出的命令中用"EOF 命令.. EOF""EOF 命令.. END" 括起来


演示:
	# wc /etc/passwd		=>	将文件调入内存然后统计
		[root@server ~]# wc /etc/passwd
			  45   92 2365 /etc/passwd

	# wc -l < /etc/passwd	=>	将文件的数据流传输给wc命令进行统计输出
		[root@server ~]# wc -l < /etc/passwd
			45



	# fdisk /dev/sdb <<EOF		=>	通过 << 打印分区
		[root@server ~]# fdisk /dev/sdb <<EOF
			> n			=>	新建分区
			> p			=>	新建主分区
			> 1			=>	分区编号为1
			>			=>	开始扇区默认
			> +2G		=>	结束扇区
			> w			=>	保存退出
			> EOF		=>	<< 追加输出结束
				=>	以上命令是给/dev/sdb设备创建一个大小为2G的主分区1

管道符命令说明:

管道符命令说明:
	#l | :管道符。上一个命令的输出作为下一个命令的输入

以上是关于shell编程之shell字符的主要内容,如果未能解决你的问题,请参考以下文章

Shell脚本编程之Shell字符串

Shell编程Shell中的流程控制之if语句

shell编程之正则表达式基础正则表达式

Shell编程三剑客之grep

shell编程之shell 运算

shell编程之元字符