要实现的功能
|
C语言编程
|
Linux Shell脚本编程
|
程序/脚本的参数传递
|
int main(int argc, char** argv)
{
if (argv != 4) {
printf( “Usage: %s arg1 arg2 arg3”, argv[0] );
return 1;
}
printf(“arg1:%s\n”,argv[1]);
printf(“arg2:%s\n”,argv[2]);
printf(“arg3:%s\n”,argv[3]);
return 0;
}
|
#!/bin/sh
if [ $# -lt 3 ]; then
echo "Usage: `basename $0` arg1 arg2 arg3" >&2
exit 1
fi
echo "arg1: $1"
echo "arg2: $2"
echo "arg3: $3"
exit 0
|
|
int main(int argc, char** argv)
{
int i;
for (i=1; i<=argc;i++) {
printf(“arg:%s\n”,argv[i]);
}
return 0;
}
|
#!/bin/sh
while [ $# -ne 0 ]
do
echo "arg: $1"
shift
done
|
逻辑/数值运算
|
if (d == 0)
if (d != 0)
if (d > 0)
if (d < 0)
if (d <= 0)
if (d >= 0)
|
if [ "$D" -eq "0" ] ; then
if [ "$D" -ne "0" ] ; then
if [ "$D" -gt "0" ] ; then
if [ "$D" -lt "0" ] ; then
if [ "$D" -le "0" ] ; then
if [ "$D" -ge "0" ] ; then
|
字符串比较
|
if (strcmp(str,”abc”)==0) {
}
|
if [ "$STR" != "abc" ]; then
fi
|
输入和输出
|
scanf(“%d”,&D);
printf( “%d”, D);
printf( “%d\n”,D);
|
read D
echo –n $D
echo $D
|
|
printf( “Press any to continue...”);
char ch=getchar();
printf( “\nyou pressed: %c\n”, ch );
|
#!/bin/sh
getchar()
{
SAVEDTTY=`stty -g`
stty cbreak
dd if=/dev/tty bs=1 count=1 2> /dev/null
stty -cbreak
stty $SAVEDTTY
}
echo -n "Press any key to continue..."
CH=`getchar`
echo ""
echo "you pressed: $CH"
read D <&3
|
程序/脚本的控制流程
|
if (isOK) {
//1
} else if (isOK2) {
//2
} else {
//3
}
|
if [ isOK ]; then
#1
elif [ isOK2 ]; then
#2
else
#3
fi
|
|
switch (d)
{
case 1:
printf(“you select 1\n”);
break;
case 2:
case 3:
printf(“you select 2 or 3\n”);
break;
default:
printf(“error\n”);
break;
};
|
case $D in
1) echo "you select 1"
;;
2|3) echo "you select 2 or 3"
;;
*) echo "error"
;;
esac
|
|
for (int loop=1; loop<=5;loop++) {
printf( “%d”, loop);
}
|
for loop in 1 2 3 4 5
do
echo $loop
done
|
|
do {
sleep(5);
} while( !isRoot );
|
IS_ROOT=`who | grep root`
until [ "$IS_ROOT" ]
do
sleep 5
done
|
|
counter=0;
while( counter < 5 ) {
printf( “%d\n”, counter);
counter++;
}
|
COUNTER=0
while [ $COUNTER -lt 5 ]
do
echo $COUNTER
COUNTER=`expr $COUNTER + 1`
done
|
|
while (1) {
}
break;
continue;
|
while :
do
done
break或break n,n表示跳出n级循环
continue
|
函数与过程的定义
|
void hello()
{
printf( “hello\n” );
}
…
//函数调用
hello();
|
hello()
{
Echo “hello”
} 或者
function hello()
{
Echo “hello”
}
…
#函数调用
hello
|
函数的参数和返回值
|
int ret = doIt();
if (ret == 0) {
printf( “OK\n” );
}
|
doIt
if [ “$?” –eq 0 ] ; then
echo “OK”
fi
或者
RET = doIt
if [ “$RET” –eq “0” ] ; then
echo “OK”
fi
|
|
int sum(int a,int b)
{
return a+b;
}
int s = sum(1,2);
printf(“the sum is: %d\n”, s);
|
sum()
{
echo -n "`expr $1 + $2`"
}
S=`sum 1 2`
echo "the sum is: $S"
|
|
bool isOK() { return false; }
if (isOK) {
printf( “YES\n” );
} else {
printf( “NO\n” );
}
|
isOK()
{
return 1;
}
if isOK ; then
echo "YES"
else
echo "NO"
fi
|
|
|
|
|
|
|
|
|
|
相关推荐
### Linux Shell语法与C语言语法对比详解 #### 引言 在IT行业中,尤其是在系统管理和自动化运维领域,熟悉Linux Shell编程对于提升工作效率至关重要。然而,由于Shell脚本编写的机会相对较少,很多程序员容易忘记...
总的来说,这些资源涵盖了Linux环境下Shell编程和C语言编程的各个方面,从基础概念到高级应用,从编写简单的脚本到构建复杂的系统。通过深入学习和实践,你将能够更好地利用Linux系统,提高开发和管理的效率。
【标题】"Linux学习资料(精心整理)服务器搭建 shell脚本 c语言"涵盖了Linux系统学习的几个关键领域,包括Linux服务器的搭建、shell脚本的编写以及C语言的基础与应用。这些主题对于IT专业人士,尤其是那些希望提升...
这个项目是用C语言编写的,并且借助了flex工具来解析命令行输入。让我们深入了解一下这个自定义shell解释器的设计和实现。 首先,C语言是编写系统级程序的首选语言,因为它直接操作内存和硬件,效率高且灵活性强。...
Linux shell编写C语言词法分析器是一个有趣且实用的项目,它将shell脚本的灵活性与C语言的解析能力相结合,用于分析C语言源代码的结构。以下是对这个项目的详细说明,以及涉及到的关键知识点。 首先,词法分析是...
【标题】"用C语言实现的shell" 描述了作者使用C语言编写了一个小型的shell程序,虽然它可能不包含所有内置的Unix/Linux shell命令,但已经实现了相当一部分功能。这个项目展示了如何在低级别的编程语言中构建一个...
shell是一个用C语言编写的程序,它是用户使用Linux的桥梁。shell即使一种命令语言,又 是一种程序设计语言。 shell脚本 是一种shell编写的脚本程序。 shell编程跟Java、PHP 编程一样,只要有一个能编写代码的文本...
在本资源中,"一个用c语言写的简单的linux shell模拟器.zip" 提供了一个学习C语言编程和操作系统接口交互的好机会。这个项目旨在模仿Linux shell,让我们深入探讨这个主题。 首先,C语言是一种强大的、底层的编程...
在Linux系统中,Shell是用户与操作系统交互的重要工具,它提供了命令行接口来执行各种操作。不同的Shell有不同的语法和特性,其中Bash(Bourne-Again SHell)和tcsh(C Shell的扩展版)是最常见的两种。本文将详细...
这份文件列举了针对程序员和设计师可能用得上的75份速查表,速查表以图片或PDF文件形式存在,涵盖了广泛的技术栈和工具,以便用户能够快速查找和参考相关信息。 ### 程序员相关速查表: 1. **jQuery速查表**:列出...
标题 "用C语言写的shell源码" 描述的是一个基于C语言实现的命令行解释器,也就是我们常说的shell。Shell是操作系统与用户交互的重要接口,它接收用户的命令并执行相应的系统操作。在这个项目中,开发者已经实现了...
在IT领域,Linux操作系统和服务与C语言是两个基础且至关重要的知识点。Linux是开源的、稳定的操作系统,广泛应用于服务器、嵌入式设备以及云计算环境中。C语言则是一种底层编程语言,是许多现代软件和操作系统的基石...
而在Linux环境下,C语言编程更是有着广泛的应用,因为Linux本身就是用C语言编写的。这本书《Linux操作系统下C语言编程入门》为初学者提供了宝贵的资源,帮助他们了解如何在Linux平台上进行C语言的实践。 首先,要...
标题 "C语言写的简单Shell程序" 指的是一个用C编程语言编写的简易命令行解释器,类似于Unix/Linux环境中的Bash Shell。这个程序旨在为用户提供一个交互式的环境,可以执行基本的命令行操作,尽管它不支持复杂的管道...
在本项目中,我们主要探讨如何使用Linux环境下的C语言来实现一个控制台版本的俄罗斯方块游戏。这个项目涉及到多个编程和系统交互的知识点,包括C语言编程基础、线程处理、随机数生成以及控制台图形绘制。下面将详细...
在本文中,我们将深入探讨Linux Shell小程序的核心概念、设计原则以及C语言在实现Shell时的关键技术。 1. **Shell脚本基础**: - **Shell脚本**:Shell脚本是包含一系列命令的文本文件,这些命令按照执行顺序运行...
C Shell因语法与C语言相似而得名,对于熟悉C语言的开发者来说,学习C Shell会相对容易。C Shell提供了变量、循环、条件语句等编程元素,使用户能够编写复杂的脚本来自动化日常任务。例如,可以编写一个C Shell脚本来...
《Linux软件工程师(C语言)实用教程》是一本专为Linux初学者设计的C语言教材,旨在帮助读者深入理解和熟练运用C语言进行Linux系统开发。本教程覆盖了C语言的基础知识,同时也注重实践操作,让学习者能够在Linux环境...