linux shell和python,Linux下编写脚本Shell和Python的区别

Linux下编写脚本Shell和Python的区别

更新时间:2019-05-08 04:14

最满意答案

思路和算法可以一样,但是语法不一样啊。例如求1+2+3+4+...,和超过10000止

shell,c,python实现思路类似。

1、shell实现while循环

#!/bin/sh

sum=0

i=0

while [ $sum -lt 10000 ];

do

i=$(($i+1)); #or ((i++));

sum=$(($sum+$i)); #or ((sum=sum+i));

done

echo $i,$sum

2、c实现while循环

#include "stdio.h"

int main()

{

int sum=0;

int i=0;

while(sum<10000)

{

i++;

sum=sum+i;

}

printf("%d,%d\n",i,sum);

return 0;

}

3、shell实现for循环

#!/bin/sh

sum=0

for((i=1;;i++));

do

sum=$(($sum+$i)) #or ((sum=sum+i))

if [ $sum -gt 10000 ];then

break;

fi

done

echo $i,$sum

4、c实现for循环

#include "stdio.h"

int main()

{

int sum=0;

int i;

for(i=1;;i++)

{

sum=sum+i;

if(sum>10000){

break;

}

}

printf("%d\n",sum);

return 0;

}

5、do/while实现

#include "stdio.h"

int main()

{

int sum=0;

int i=0;

do

{

i++;

sum=sum+i;

}while(sum<10000);

printf("%d,%d\n",i,sum);

return 0;

}

6、python实现while循环

#!/usr/bin/python

sum=0

i=0

while sum < 10000 :

i=i+1;

sum=sum+i;

print i,sum;

2016-04-27 回答

其他回答

shell是linux内核和用户命令的沟通桥梁, 你输入的任何命令都是通过shell去解释, linux内核才知道你要做什么

严格的讲, shell不是一种编程语言, 但是shell有自己的控制流结构(判断,循环,选择),运算以及函数等编程语言特性, 加上shell命令组织在一起构成脚本, 能够完成一般编程语言做到的事情.

perl和python相比于shell, 是严格意义上的编程语言. 功能比shell当然会复杂很多, 语法上也稍微复杂一些.

perl最大的优势在于它的字符串模式匹配能力,其提供了一个十分强大的正则表达式匹配引擎。然而perl语言的晦涩和对符号语法的过度使用,让解读变得很困难。这些语法令初学者不得精要,为他们的学习带来不小的阻碍。通常当你想阅读几个月前写的perl脚本的时候都不得不求助参考书。

系统管理的基础是shell, 这取决于shell的桥梁作用. 可以说, shell脚本几乎可以完成所有linux下的自动化任务.

perl/python处理某些问题可能比shell简单,高效, 可以说是提升系统管理水平的进阶手段.

总之, shell是基础, 其他是进阶辅助

2016-04-27 回答

相关问答

一般以 #!/bin/sh 开头(不是必须要写,但一定要单独一行),指定执行这个脚本的shell程序(也可以用#!/bin/zsh或其他),然后就是堆命令了。Linux的shell脚本支持很多功能,加上Linux高度模块化的命令,完全可以用shell脚本写出复杂的程序。 以上只是简单介绍如何开始写shell脚本,如果要写复杂的脚本,还需要深入学习相关知识(如if——fi、case——esac等结构)。 当然,还需要给脚本加上可执行权限(chmod +x ./file.sh),否则可以用 sh ./

...

问题1: #!/bin/sh #输入整数返回各位数字之和 if [ $# -ne 1 ];then exit -1;fi i=$1; sum=0; while [ $i -gt 0 ];do j=`echo "$i%10"|bc`; i=`echo "$i/10"|bc`; sum=`echo "${sum}+$j"|bc`; done; echo ${sum}; 问题二: #!/bin/sh #输入整数,反序输出整数 if [ $# -ne 1 ];then exit -1; fi i=$1;

...

第一题 #!/bin/bash declare -i a=$1 declare -i sum=0 while [ "$a" -ne "0" ] do sum=$sum+$a%10 a=$a/10 done echo "The result is $sum" 第二题 #!/bin/bash declare -i a=$1 while [ $a -ne 0 ] do echo -n "$(($a%10))" a=$a/10 done echo 第三题 脚本命名为backupdaily.sh 在/etc

...

一般以 #!/bin/sh 开头(不是必须要写,但一定要单独一行),指定执行这个脚本的shell程序(也可以用#!/bin/zsh或其他),然后就是堆命令了。Linux的shell脚本支持很多功能,加上Linux高度模块化的命令,完全可以用shell脚本写出复杂的程序。 以上只是简单介绍如何开始写shell脚本,如果要写复杂的脚本,还需要深入学习相关知识(如if——fi、case——esac等结构)。 当然,还需要给脚本加上可执行权限(chmod +x ./file.sh),否则可以用 sh ./

...

#!/bin/sh #定义一个变量i并赋初值0; i=0 #定义一个while循环结构,条件表达式为判断i值是否小于9,i为其计数器; while test $i -lt 9 do # 在循环结构内分别是三个if分支结构,分别判断i=0、i=1和i>1的情况; # 如果i=0,输出i,并给 赋值( 用变量n代替); if test $i -lt 1;then n=$i echo $n #如果i=1,输出i,并给 赋值( 用变量m代替); elif test $i -eq 1;then m=$i e

...

shell是linux内核和用户命令的沟通桥梁, 你输入的任何命令都是通过shell去解释, linux内核才知道你要做什么 严格的讲, shell不是一种编程语言, 但是shell有自己的控制流结构(判断,循环,选择),运算以及函数等编程语言特性, 加上shell命令组织在一起构成脚本, 能够完成一般编程语言做到的事情. perl和python相比于shell, 是严格意义上的编程语言. 功能比shell当然会复杂很多, 语法上也稍微复杂一些. perl最大的优势在于它的字符串模式匹配能力,其提

...

1. 只能够输入Python命令 。 在Python交互模式下输入Python代码,而不要输入系统的命令。 2. 在交互模式下打印语句不是必须的 。 在交互模式下不需要输入完整的打印语句,解释器自动打印表达式的结果,但是在文件中则需要写print 语句来打印结果。 3. 提示符的变换和复合语句 。 当在交互模式下输入两行或多行的复合语句时,提示符会由>>> 变成 …;如果要结束复合语句的输入并执行它,那么必须按下Enter键两次,复合语句才会被执行。 4. 交互提示模式一次运行一条语句 。 当你想

...

shell脚本只是命令操作的集合。就是把你手动交互输入的命令放在一个文件里,自动依次执行。 步骤大约如下: 1. 在行首指定shell脚本的解析器,如 #!/bin/bash 2. 接着依次每行输入shell的操作命令 3. 输入完毕后,给文件设置可执行权限并运行。

思路和算法可以一样,但是语法不一样啊。例如求1+2+3+4+...,和超过10000止 shell,c,python实现思路类似。 1、shell实现while循环 #!/bin/sh sum=0 i=0 while [ $sum -lt 10000 ]; do i=$(($i+1)); #or ((i++)); sum=$(($sum+$i)); #or ((sum=sum+i)); done echo $i,$sum 2、c实现while循环 #include "stdio.h" int ma

...

1、Shell俗称壳(用来区别于系统内核 ,如下图所示),是指“提供使用者使用界面”的软件(命令解析器)。它类似于Linux系统中的bash shell,windows系统上的cmd.exe,它接收用户命令,然后调用相应的应用程序。 2、Shell脚本是Shell程序所支持的命令集合或者文本文档 ,是Shell程序所操作的对象。Shell脚本般是是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值