重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1、如果bat文件指的是windows平台上以.bat为结尾的批处理文件。类似于下图所示的文件内容:
创新互联建站是一家从事企业网站建设、网站建设、做网站、行业门户网站建设、网页设计制作的专业网站制作公司,拥有经验丰富的网站建设工程师和网页设计人员,具备各种规模与类型网站建设的实力,在网站建设领域树立了自己独特的设计风格。自公司成立以来曾独立设计制作的站点上千余家。
一般来说不能在linux平台进行运行,主要是因为windows和linux使用不同的shell控制结构和命令。
如果只是单纯的命令组合而成的.bat文件,并且linux平台也存在与windows上一样的命令,则可以兼容执行,比如下面的代码:
echo "hello world"
无论在windows上还是在linux上都是可以执行的。
2、如果bat文件指的就是批处理文件(Batch的简写),则linux和windows平台都可以执行,不同之处在于shell的不同,windows平台使用的cmd(命令提示符),linux平台中shell类型很多,一般默认为bash shell。两者都有自己的shell语法格式。
用户想要在linux开机的时候自启动相关的程序。那我们要怎么设置呢?下面由我为大家整理了linux下开机自启动命令的相关知识,希望对大家有所帮助!
linux下开机自启动命令
1.开机启动时自动运行程序
Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。
例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。
扩展:其他情况下linux自启动程序命令
2.登录时自动运行程序
用户登录时,bash首先自动执行系统管理员建立的全局登录script :/etc/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、/.bash_login、 /.profile,但只执行最先找到的一个。
因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。
3.退出登录时自动运行程序
退出登录时,bash自动执行个人的退出登录脚本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。
4.定期自动运行程序
linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。
例如,建立文件crondFile,内容为"00 9 23 Jan * HappyBirthday",运行"crontab cronFile"命令后,每当元月23日上午9:00系统自动执行"HappyBirthday"的程序("*"表示不管当天是星期几)。 (/etc/crontab中配置命令即可)也可以
5.定时自动运行程序一次
定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:
6.创建开机自启动脚本
1) 将你的启动脚本复制到 /etc/init.d目录下
以下假设你的脚本文件名为 test。
2) 设置脚本文件的权限
$ sudo chmod 755 /etc/init.d/test
3) 执行如下命令将脚本放到启动脚本中去:
$ cd /etc/init.d
$ sudo update-rc.d test defaults 95
注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:
update-rc.d: warning: /etc/init.d/test missing LSB informationupdate-rc.d: see
卸载启动脚本的方法:
$ cd /etc/init.d
$ sudo update-rc.d -f test remove
命令输出的信息参考如下:
Removing any system startup links for /etc/init.d/test … /etc/rc0.d/K95test /etc/rc1.d/K95test /etc/rc2.d/S95test /etc/rc3.d/S95test /etc/rc4.d/S95test /etc/rc5.d/S95test /etc/rc6.d/K95test
这个问题其实很好办,写一个脚本就可以办到,脚本内容如下:
#!bin/bash
sudo /etc/init.d/ssh start
这个脚本的名字就很随意了,因为Linux中文件是否能执行和扩展名没有什么关系。建议给予这个文件足够的权限,比如让所有用户都能执行它就行了。命令:chmod a+x xxx (xxx为脚本的名字)。
如果这个机器仅仅是你自己在用,并不是搞一个什么正经的服务器的话(服务器要考虑安全),这个脚本可以放置在/bin目录下,之后你执行这个脚本就很方便了。直接在终端输入这个脚本的名字就可以执行了。
如果你是真正在学Linux,你会发现鼠标实际上用的不是很多的,建议还是正经的学点命令行吧,Linux下工作站上很少能看到鼠标的。
以windows下备份sql数据库为例,开机自动执行.bat脚本 1、新建dump.bat文件,文件中的代码如下: set YYYYmmdd=%date:~0,4%%date:~5,2%%date:~8,2% set "filename=test%YYYYmmdd%.sql" echo %fil mb5fe55afb6fa16 1241 天前 原创 Windows开机自动执行bat脚本
默认 A.BAT 所有内容插入 b.vrf文件。
默认 a.bat文本内第一行内容,插入b.vrf后,是第二行
sed -i '1 r a.bat' b.vrf
如果是第二行的话 sed -i '2 r a.bat' b.vrf 就是这个,插入后,第三行才是a.bat的内容
基本语法:
for i in ;
do;
done
1、处理文件夹下的所有文件:
for i in $(ls /public/home/fengting/demo/pan69/sort_bam);
2、简单的for循环:
for ((i=1;i=33;i++));
do ngmlr -t 10 -r /public/home/fengting/database/reference/rice/IRGSP-1.0_genome.fasta -q /public/home/fengting/data/hhz/H7L$i.arrow.polish.fasta -o /public/home/fengting/data/rihhz/H7L$i.sam