Linux下的bash对拍】的更多相关文章

下面是Linux下的bash对拍程序: #!/bin/bash t=0 //数据组数 while true; do let "t=$t + 1" echox printf $t //bash语言的变量前需要加 $ printf ": " ./datamaker > input //数据生成器 ./color < input > output //需要对拍的程序 ./std < input > stdout //标程 if diff ou…
下面是\(Linux\)下的\(bash\)对拍程序: #!/bin/bash t=0 //数据组数 while true; do let "t=$t + 1" echox printf $t //bash语言的变量前需要加 $ printf ": " ./datamaker > input //数据生成器 ./color < input > output //需要对拍的程序 ./std < input > stdout //标程 if…
基于fork(),execvp()和wait()实现类linux下的bash--mybash 预备知识 fork():fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事http://blog.csdn.net/jason314/article/details/5640969. 重点是后一句话,如果初始参数或者传入变量不同,两个进程也可以做不同的事,意思就是虽然父进利用fork()函数创造了…
新安装的linux系统,如果进行精简安装可能会出现bash:command not found 的提示,大家在安装的时候可以选择默认安装basic的组件,一般即可.到时候可以再升级.   如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found.那么 首先就要考虑root 的$PATH里是否已经包含了这些环境变量. 主要是这四个:/bin ,/usr/bin,/sbin,/usr/sbin. 四个主要存放的东东: ./bi…
一..sh文件介绍 .sh为Linux的脚本文件,我们可以通过.sh执行一些命令,可以理解为windows的.bat批处理文件. 二.点命令(.) .命令和source是同一个命令,可以理解为source的缩写,简称点命令. 三.sh/base/source/.命令执行.sh文件的区别 假如有一个文件test.sh,脚本内容如下 #!/bin/bash echo "step 1 sleeping" sleep 200 echo "step 2 sleeping" s…
题目链接: 题目描述 利用指针,编写一个函数实现三个整数按由小到大的排序. 输入 三个整数 输出 由小到大输出成一行,每个数字后面跟一个空格 样例输入 2 3 1 样例输出 1 2 3 复习下Linux和Bash #!/bin/bash read -a arr ; i<${#arr[@]} ; i++ ));do ; j>i ; j-- ));do ]} ]];then t=${arr[j]} arr[j]=${arr[j-]} arr[j-]=$t fi done done echo ${a…
题目链接: 题目描述 打印出所有"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该本身. 例如:153是一个水仙花数,因为153=1^3+5^3+3^3. Output: 153 ??? ??? ??? 输入 无 输出 所有的水仙花数,从小的开始. 每行一个 样例输入 样例输出 复习下Linux和Bash #!/bin/bash ;i<;i++)) do ;j<;j++)) do ;k<;k++)) do a=$((i**+j**…
题目链接: 题目描述 编写一个程序,输入a.b.c三个值,输出其中最大值. 输入 一行数组,分别为a b c 输出 a b c其中最大的数 样例输入 10 20 30 样例输出 30 复习下Linux和Bash #!/bin/bash read x read y read z tem=$x if [ $y -gt $tem ] then tem=$y else tem=$tem fi if [ $z -gt $tem ] then tem=$z else tem=$tem fi echo $te…
题目链接: 题目描述 写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息. 输入 一个数 输出 如果是素数输出prime 如果不是输出not prime 样例输入 97 样例输出 prime 复习下Linux和Bash #!/bin/bash read n k= ;i<n;i++)) do b=$[ n%$i ] # echo $b ]];then k= fi done ]]; then echo "not prime" else echo "prime&…
用 ./ 运行bash脚本文件出现 报错信息 /usr/bin/env: "bash\r": 没有那个文件或目录 错误原因:这主要是因为bash后面多了\r这个字符的原因.在linux终端下,输出\r会什么都不显示,只是把光标移到行首.于是终端虽然输出了/usr/bin/env bash,但是碰到\r后,光标会被移到行首,接着输出了:No such file or directory把前面的覆盖掉了.于是出现了那个莫名其妙的出错信息了 解决办法: 用vim打开sh脚本文件, 重新设置文…
今天在虚拟机上安装了CentOS5.5,发现运行一些很正常的诸如:init,shutdown,fdisk 等命令时,悍然提示: bash: xxx command not found. 那么,首先就要考虑root 的$PATH里是否已经包含了这些环境变量. 主要是这四个:/bin , /usr/bin, /sbin, /usr/sbin. 四个主要存放的东东: ./bin: bin为binary的简写主要放置一些系统的必备执行档例如:cat.cp.chmod df.dmesg.gzip.kill…
今天领导分享了一个探测端口的命令,于是试了一下,提示未找到-bash: nc: command not found  因此决定将bash的命令在复习一下,温故而知新 总结整理于此: 确定你的DNS可以解析公网地址(命令:vi /etc/resolv.conf,添加:nameserver 222.172.200.68) 使用命令:yum install nc 安装完成再使用命令:nc -l 5001 如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:c…
运行bash shell命令的方式 vi t1.sh 并输入 pwd ls pwd 然后:x保存关闭 1.首先查看权限 ls -l,如果没有执行权限则用chmod a+x t1.sh ,最后运行./t1.sh.如下图 2.如果没有权限,直接调用/bin/sh t1.sh 3.source t1.sh . t1.sh 注意:在使用source 和 .命令时是在当前bash中,如果你的执行脚本中最后一句包含exit 0则你的窗口或者脚本,执行完会关闭,而./是开了新的bash,因此不会关闭窗口.如下…
一.expect介绍 Expect是Unix系统中用来进行自动化控制和测试的软件工具,由DonLibes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等.该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制:也可利用Tk工具,将交互程序包装在X11的图形用户界面中. 简单地说,expect是一个工具,可以根据用户设定的规则和系统进程进行自动化交互,例如远程登陆的密码输入.自动化的执行远程…
Linux 下 expect 脚本语言中交互处理常用命令 1. #!/usr/bin/expect 告诉操作系统脚本里的代码使用那一个 shell 来执行.这里的 expect 其实和 Linux 下的 bash.windows 下的 cmd 是一类东西. 注意:这一行需要在脚本的第一行,从而告知操作系统采用 expect 作为 shell 执行脚本. 注意:当使用 #!/usr/bin/expect -d 时,expect 脚本将运行在调试模式,届时脚本执行的全过程将被展示出来. 2. set…
因为要对客户方的快30个项目进行特别有顺序的重启,所以不得不想办法写个脚本,网上看了不少段子.真是残缺的可以.没有一段是可以正常运行的.我来按顺序记录一下 脚本的本身 使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写却不知其然.本文用一个最短的例子说明脚本的原理. 脚本代码如下: ############################################## #!/usr/bin/expect set timeo…
由于要对客户方的快30个项目进行特别有顺序的重新启动,所以不得不想办法写个脚本,网上看了不少段子.真是残缺的能够. 没有一段是能够正常运行的.我来按顺序记录一下 脚本的本身 使用expect实现自己主动登录的脚本.网上有非常多,但是都没有一个明确的说明,刚開始学习的人一般都是照抄.收藏.但是为什么要这么写却不知其然.本文用一个最短的样例说明脚本的原理. 脚本代码例如以下: ############################################## #!/usr/bin/expe…
su:Swith user  切换用户,切换到root用户 cat: Concatenate  串联(cat(Concatenate)命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用.) cat主要有三大功能: 1.一次显示整个文件:cat filename 2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件. 3.将几个文件合并为一个文件:cat file1 …
此博客需要付费才阅读,因为该博客实用性十分强,且十分容易理解 若需购买请联系博主,联系方式戳这 http://www.cnblogs.com/hadilo/p/5932395.html 主要介绍如何在Linux下实现对拍,而且对拍程序是用C++语言编写,这就省去了用Bash编写的麻烦 在考试中对拍可以检验一道题是否做对,甚至可以挽回100分 免费时阅读量为 223,评论量为 4 价格:RMB 1.5 博客提取:http://www.cnblogs.com/hadilo/p/5920621.htm…
对拍脚本 新建一个文档 check.sh 作为对拍脚本. #!/bin/bash while(true)do #死循环 ./data > .in #运行数据生成器,将数据输出到1.in ./std < .in > out1 #std是标准(暴力)程序 ./now < .in > out2 #now是现在要被测的程序 if diff -w out1 out2; then #比较,-w 是忽略行末空格 echo AC #如果一样就输出AC else echo WA cat out…
PS背景:我在公司做sdk 的pc端开发,所以经常会在win下编译通过之后跑到linux下再运行一次已确保能支持多平台. 今儿在win下跑完一程序,然后放到linux下跑的时候,我用指令: [plain] view plain copy sudo ./build.sh 但是却没有任何反应.于是我换了指令,用 [plain] view plain copy chmod u+x build.sh   ./build.sh 报错 "build.sh  /bin/bash^M: 坏的解释器:没有那个文件…
说明 目前,linux下的powershell约等于pash.希望大家专注mono,关注pash. 一键安装脚本包括for centos6,centos7,ubuntu 14.04  ubuntu 14.10 安装脚本是用yum或apt安装,mono官方最新版,然后编译安装pash最新版,最后生成两个命令: mybuild用于编译pash mypash用于运行pash 1 centos6 #!/bin/bash # centos6,一键安装mono,pash的shell脚本. # centos…
[在Windows下进行的编程人员,你真的需要学习下Linux] 手册:<Linux 命令手册(特洛伊版2.0)> 链接: https://pan.baidu.com/s/1skrVSvV 密码: tmf2 附Bash 手册: Shell编程手册.chm 百度网盘:http://pan.baidu.com/s/1dFI1UOL -----------------------------割了---------------------------------------------- 姑且 不说B…
Linux下通过rm -f删除/var/spool/postfix/maildrop/中大量的小文件时提示: "-bash: /bin/rm: Argument list too long" 如图: 通过ls /var/spool/postfix/maildrop/*|wc -l 发现文件数达到21万多,见附件: 原因:rm -f的参数过多 解决方法:可使用awk一次删除一个的方式进行删除,但必须先进入该目录下,操作方法如下:1.先进入该目录下:cd /var/spool/postfi…
如果是在windows下编辑的脚本,到了linux下运行时会报出这样的错误/bin/bash^M:bad interpreter: No such file or directory这时因为编码的问题,需要进行编码转换.使用sudo vim xxx打开文件,:set ff可以看到当前的格式,应该是dos,使用set ff=unix,更改其格式,然后保存退出,就能正常的运行程序了…
在linux下操作的时候经常会遇到,bash: service: command not found这个错误,以前在网上找了,照着弄了,也没细看原因,今天又碰到这个问题,就顺便研究一下. 1.通常这种情况是出现在 通过su root命令来进行操作的时候. su或者su root 只是相当于以root用户身份来操作,实际的系统环境并没有切换到root用户的环境,而只是当前登录用户: su -,-l,--login都是已经完全的切换的root环境下,相当于完全用root用户登录. 这里就看下su命令…
在日常业务运维中,有时为了配合解决问题,需要给非运维人员开通系统账号,用于查询日志或代码.通常为了系统安全或避免不必要的误操作等目的,会将账号权限降至最低.下面介绍下在Linux下通过受限bash创建指定权限账号的操作记录: [root@mq-server ~]# ln -s /bin/bash /bin/rbash [root@mq-server ~]# useradd -s /bin/rbash wangshibo [root@mq-server ~]# passwd wangshibo […
一.linux下编译make文件报错“/bin/bash^M: 坏的解释器 参考文章:http://blog.csdn.net/liuqiyao_01/article/details/41542101#comments 自己测试的结果: [1]使用windows 下的编辑工具 新建文件doc2unix.sh #!/usr/bin/env bash # test PID=$(ps -aef | grep nginx | grep -v grep | grep master |awk '{print…
Linux下输入某些命令时会提示:bash:command not found. 首先,查看$PATH中是否包含了这些命令. $PATH:决定了shell到哪些目录中去寻找命令或程序,PATH值是一系列的目录.当运行程序时,linux到这些目录下搜索进行编译链接. 格式: PATH = $PATH:<PATH1>:<PATH2>:<PATH3>:...:<PATH N> 可以将自己指定的路径加到PATH中,中间用冒号":"隔开.环境变量更…
对拍是各种计算机考试检查时必备工具,实际上十分强大,只要你的暴力没有写错就没有问题. 对拍的意思:(怎么有点语文课的意思雾) 对:看见'对'就可以知道有两个. 拍:就是把两个程序结果拍在一起,对照(有点牵强). 实践 由于Windows和Linux系统不同,平常大多数人都用Windows,而在noi系列赛事中都采用Linux系统. Windows 就以a+b为例吧. 首先摆一个可能是正解的东西. 这个代码文件名:1.cpp #include<cstdio> #include<window…