shell入门(一)
来源:互联网 发布:java 时间string转date 编辑:程序博客网 时间:2024/06/05 00:11
echo -n 不换行输出
echo -e 处理特殊字符
read -p “please input a number” x 提示输入一个数,并赋值给x
case 用法
case $x in 1) echo 'You select 1' ;; 2) echo 'You select 2' ;; *) echo 'You do not select a number between 1 to 4' ;;esac
判断
if [
使用函数
#!/bin/shRED_COLOR='\E[1;31m'GREEN_COLOR='\E[1;32m'YELLOW_COLOR='\E[1;33m'BLUE_COLOR='\E[1;34m'RES='\E[0m'function usage(){ echo "USAGE: $0 {1|2|3|4}" exit 1}function menu(){ cat <<END 1.apple 2.pear 3.bananaEND}function chose(){ read -p "pls input your choice:" fruit case "$fruit" in 1) echo -e "${RED_COLOR}apple${RES}" ;; 2) echo -e "${GREEN_COLOR}pear${RES}" ;; 3) echo -e "${YELLOW_COLOR}banana${RES}" ;; *) usage esac}function main(){ menu chose}main//统计传入的参数个数 脚本名字$#$0//连接两个字符串v1="hello"v2="world"v3=$v1$v2//计算两个数的和A=1B=2let v3=$A+$Becho $v3echo $(($A+$B)) # 方法 2echo $[$A+$B] # 方法 3expr $A + $B # 方法 4echo $A+$B | bc # 方法 5awk 'BEGIN{print '"$A"'+'"$B"'}' # 方法 6//如何获取某一行(取第五行)方法一:head -5 test.txt|tail -1方法二:cat test.txt|sed -n '7p' //-n是指只显示生效的那行//后台运行nohup command 永久执行,和用户端没有关系,断开ssh连接也不会影响到其执行,该命令执行之后会产生子文件,该子文件位于当前目录,相当于日志文件command & 后台执行,当用户推出(挂起)的时候,命令行业会跟着退出比较巧妙的命令是nohup command & 使命令永久在后台执行//怎么注释语句#//'和"以及`(反引号)区别' 把括起来的部分当做字符串" 如果字符串里有变量,那么会使用变量的值来代替该变量` 把括起来的部分当做命令执行//调用另一个脚本exec ./a.sh //执行之后,该进程剩下的部分不会再执行,而是转至执行a.sh脚本source ./a.sh //执行完该脚本之后,继续回来继续执行剩下的脚本fork ./a.sh //直接运行脚本,会以当期那shell为父进程,产生新的进程//使用echo命令获取字符串变量的一部分echo ${variable:x:y} //取字符串variable中的x到y的位置的字符//根据某个字符提取部分数据variable="User:123:321:/home/dir/aa"echo ${variable#*:*:}或者echo ${variable##*:} 运行结果321:/home/dir/aa//如果只需要显示Userecho ${variable%:*:*:*}或者echo ${variable%%:*}//xargs的使用 执行下列命令会分行显示 -n1表示每次传一个参数过去,我刚开始的时候用,把参数隔开了,然后就没有分行显示echo '1 , 2 3 4'|xargs -n1 //修改bash的标准分割符为:IFS=":"//获取变量的长度${#variable}//打印变量的最后5个字符echo ${variable: -5} //注意-5前有个空格${variable:-10} //如果variable未赋值,则输出5,如有赋值,只输出原值//转换为大写tr '[:lower:]' '[:upper:]'//删除字符串中的所有空格echo $string|tr -d " "//写出输出数字 0 到 100 中 3 的倍数(0 3 6 9 …)的命令 ?for i in {0..100..3}; do echo $i; done//[ $a == $b ] 和 [ $a -eq $b ] 有什么区别[ $a == $b ] - 用于字符串比较[ $a -eq $b ] - 用于数字比较//如何检查字符串是否以字母 "abc" 开头 ?[[ $string == abc* ]]//如何列出以 ab 或 xy 开头的用户名 ?egrep "^ab|^xy" /etc/passwd|cut -d: -f1// $* 和 $@ 有什么区别*$* - 以一个字符串形式输出所有传递到脚本的参数$@ - 以 $IFS 为分隔符列出所有传递到脚本中的参数
阅读全文
0 0
- shell入门(一)
- shell入门(一)
- Shell入门(一)Shell脚本、环境
- Shell入门知识(一)
- shell 简单入门(一)
- SHELL编程入门(一)
- shell编程入门(一)
- shell基础入门(一)
- shell编程(一)--入门
- 笔记:Linux shell(一): 简单入门
- linux shell 编程入门(一)
- Shell脚本入门(一) - 简介
- Shell脚本编程入门(一)
- Shell基础(一):入门基础
- Shell编程入门总结(一)
- Linux shell入门基础(一)
- Linux 的shell编程入门(一)
- Shell入门(一)之简介
- JS JQuery
- php header函数常见用途
- centos7下部署iptables环境纪录(关闭默认的firewalle)
- 图像处理------理解卷积
- android应用层读写iic设备
- shell入门(一)
- Spring Mybatis整合版本问题
- adb devices识别夜神模拟器方法
- Linux 端口转发 端口映射
- shiro升级quartz到2.1.6版本
- 创建指定时间触发定时器
- Perl 之 chomp 用法
- div 居中
- Java集合排序及java集合类详解