Linux Shell基本使用

bash 脚本的建立

简单的示例:

文件名为scp1

#! /bin/bash
who
date

# 为注释

特殊形式 #!  告诉系统后面同一行上后面的那个参数是用来执行本文件的程序

运行脚本:(两种方法)

一:使用命令 /bin/bash scp1

二:chmod u+x scp1

       ./scp1


变量的声明: declare , typeset

变量的引用: 变量名前加 $来访问它的内容

" "内的允许 $ 符号对变量的替换

' ' 则不允许

\ 可以去除某些字符特殊含义,包括 $


命令的替换 $(command)

输入命令:read


脚本位置参数的传递:$1..$9

$0 为脚本文件或命令的名字

$# 为传递给一个执行中shell脚本参数的个数

当参数个数多于9个时,可以使用shift 把命令行参数向左移动一位, 当移动一次 $# 也会减一

shift [N] 为移动N个位置

set 可以用来设置位置参数

示例:(文件名:demo_set)

#! /bin/bash
filename="$1"
set $(ls -il filename)
inode="$1"
size="$6"
echo "Name Inode Size"
echo "$filename $inode $size"
exit 0

使用时:

 demo_set file0

上面先使用命令替换,将ls的结果作为位置参数


控制语句:

第一种:

if expression

 then

  then-command

fi

第二种:

if expression

 then

     then-command

 else

     else-command

fi

第三种:

if expression

 then

     then-command

 elif

     elif-command

 else

     else-command

fi

表达式可以用 test 或者 [ ] 来检测


for语句

 for var [ in arg-list ]

do

 command-list

done

示例:


结果示例:


while语句:

while expression

do

     command-list

done


until语句:(直到条件为真则退出)

until expression

do

    command-list

done


case语句:

 case var in

pattern1) command-list

               ;;

pattern2) command-list

               ;;

.....

pattern) command-list

               ;;

esac


break , continue 和C类似


数值处理:

let命令

shell扩展 $((expression))

expr命令


若要使一个数增加,则可以:

 foo=$(($foo+1))


函数:

function_name()

{

}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值