重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
echo 是一个脚本命令。
创新互联公司专注于临高网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供临高营销型网站建设,临高网站制作、临高网页设计、临高网站官网定制、微信小程序开发服务,打造临高网络公司原创品牌,更为您提供临高网站排名全网营销落地服务。
它的基本格式为 echo "abcd" 就会在屏幕打印出来,
另外可以打印参数值 b=8 echo "b = $b" 会打印 b =8
你可以通过printf函数非常简单就可以实现
直接用 printf 输出字符串到屏幕。
执行程序时 用 输出转向 到 test.txt
======
程序名: benxiaohai.c
#includestdio.h
main(){
char s1[]="set \"file=%file:\"=%\" \n";
char s2[]="echo !str!\"%file%\"_tmp.txt \n";
char s3[]="copy \"%file%\" \"%file%\"_bak.txt nul 2nul \n";
printf("%s",s1);
printf("%s",s2);
printf("%s",s3);
}
运行:
benxiaohai.exe test.txt
就达到目的了。
echo命令
(1)功能:打开或关闭命令回显(即命令运行时的显示)/显示信息
(2)语法:echo [{on|off}] [message]
(3)参数:on 打开命令回显。
off 关闭命令回显。
message 指定要显示的文本(例:执行“@echo This a ECHO command.”,显示“This a ECHO command.”)。
(4)特殊用法:“echo”不带任何参数将显示当前回显设置。“echo.”显示一个空行。
echo好像还有些复杂的用法,但作为作业应该只是实现回显吧。
你的程序只能一个字符一个字符的输入,要一次回显应该用带参数的main:
void main(int argc ,char *argv[])
{
for (int i=1;iargc;i++)
coutargv[i]' ';
coutendl;
}
Linux下的echo命令,是实现“参数回送”,Linux终端输入 #echo hello world! hello world! 用C实现的代码如下: /*echo.c*/ main(int argc,char *argv[]) { while(--argc0) printf("%s%c",*++argv,(argv1)? '':'\n'); } 也可以用如下代码: /*echo.c*/ main(int argc, char *argv [ ]) {int i; for(i=1;i 这样,在MSDOS下输入: C:\echo I am Nick. 将输出: I am Nick. 注:main函数中,argc存放包括文件名在内的字符串的个数,如上的echo I am Nick.则argc=4; 而argv[]则指向这些字符中的存放的地址。上例中,则argv[3]指向"Nick",而argv[3][0]="N"。
这个就是C语言的命令行参数和main函数之间的参数转换关系的详细解释了。
1、首先明确一下我们编译出来的可执行程序
windows编译出来的可执行程序扩展名为exe,比如test.ext,楼主例子中的echo.exe,运行程序的时候exe可以省略。
我们要执行一个程序,第一个肯定是要写上程序的名字,比如echo.exe或者echo,然后后面跟参数,比如楼主程序里面的hellow, world,就是2个参数,以空格分开,第一个参数是hellow,,第二个参数是world
2、然后再看一下程序是如果将我们写的参数传递给可执行程序的。
main函数的参数是两个int argc,char *argv[],argc就是参数的个数,argv数组就是具体的参数了。
程序执行时,会根据我们输入的个数来决定给main函数传递什么东西。按照空格分开,每一个输入就是一个参数(注意:也要包含程序本身的名字,也是一个参数)
即当我们输入echo hellow, world的时候,main函数接收到3个参数,echo,hellow,和world,这个时候argc就等于3,argv[0]是echo,argv[1]是hellow,,argv[2]world。
3、估计楼主疑惑的就是可执行程序的名字为什么也是一个参数,这个是C语言的规范,记住就行了哈。