您的位置首页>企业动态>

英创信息技术Linux脚本启动应用程序方法简介

导读大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英创信息技术Linux脚本启动应用程序方法简介问题。在Innolux主板必读手册中,详细介

大家好,我是极客范的本期栏目编辑小友,现在为大家讲解英创信息技术Linux脚本启动应用程序方法简介问题。

在Innolux主板必读手册中,详细介绍了用userinfo.txt配置系统引导自动执行程序的方法。详情请参考英诺力士主板必读手册。

另一种方法是使用命令行在终端下自动执行程序。如果客户习惯使用Linux命令行模式,可以使用这种方法。这种方法的优点是灵活,用户可以独立配置,即在执行程序之前,可以编辑输入一些其他命令或设置一些特殊的环境变量。

在Innolux的嵌入式Linux板中集成了相应的启动管理程序。用户只需编辑一个名为user.sh的Linux脚本文件,然后将user.sh放入Innolux主板的/mnt/nandflash目录中,即可实现通过脚本自动启动应用程序的功能。当userinfo.txt和user.sh同时存在时,系统会优先读取user.sh,userinfo.txt文件中指定的发起方将不起作用。下面详细介绍如何使用这种方法。

User.sh需要先编辑,因为user.sh是Linux脚本文件,所以可以在Linux系统环境下编辑。将user.sh复制到Linux系统的主机上,使用cd命令进入响应的目录,然后使用命令gedit user.sh编辑脚本文件。在脚本文件中,输入要执行的命令。

编辑脚本

如图所示,只需输入最简单的程序命令,输入nandflash,然后执行hello即可。编辑后保存。

如果你没有一个好的Linux系统环境,如果你想在Windows系统环境中编辑这个脚本文件,你需要使用一个单独的编辑器。这是因为Windows下DOS文本格式的换行符与Linux系统中使用的换行符不同。因此,如果您使用Windows附带的文本编辑器进行编辑,您将无法识别Linux下的换行符。

在这里,我们可以向客户推荐两个方便的软件:Notepad2和PSPad。就用这两个软件在Windows下编辑这个脚本文件。这里是使用这两个软件的编辑界面。

使用记事本2 D2编辑界面。

使用PSPad编辑界面。

将编辑好的user.sh放入Innolux主板的/mnt/nandflash/目录中,将需要执行的程序放入user.sh中指定的运行路径中。

将user.sh复制到nandflash目录。

断开JP1,重启主板进入运行模式,然后自动执行user.sh中的命令启动设定程序。

可以看到系统开机后,程序hello自动执行。

如果您使用Windows附带的文本编辑器,如写字板,请编辑user.sh脚本文件。出现一条错误消息。

错误提示

这是因为,如前所述,Linux无法识别DOS文本中的换行符。用VI在/mnt/nandflash/中打开user.sh,你会发现换行符中多了m。

有更多的地方可以换行。

在这种情况下,请转到目录/mnt/nandflash/并使用命令DOS2unuxuser.sh将DOS文本格式的user.sh转换为Linux格式。转换后,使用VI查看是正确的。

转换的user.sh是正确的。

再次重启主板,就能正确执行程序了。

t-indent: 2em;">正确启动程序

在英创Linux主板的使用必读中,已经详细的介绍了使用userinfo.txt来配置系统开机自动执行程序的方法,详情可以参见英创Linux主板的使用必读手册。

还有一种方法是在终端下使用命令行来自动执行程序,如果客户比较习惯使用Linux命令行模式就可以使用这种方法。这种方法的好处是比较灵活,用户可自主配置,即在执行程序之前,可以自己编辑输入一些其他命令或者设置一些专用的环境变量。

在英创的嵌入式Linux板卡中集成了相应启动管理程序,用户只需要编辑一个名为user.sh的Linux脚本文件,然后将user.sh放在英创Linux主板的/mnt/nandflash目录下即可实现脚本自动启动应用程序的功能。当userinfo.txt和user.sh同时存在的情况下,系统会优先选择读取user.sh,同时userinfo.txt文件中指定的启动程序不起作用了。下面来详细介绍如何使用这种方法。

首先需要编辑user.sh,因为user.sh是一个Linux脚本文件,所以在Linux系统环境下就可以进行编辑。将user.sh拷贝到装有Linux系统的主机中,使用cd命令进入响应的目录,再使用命令gedit user.sh编辑脚本文件。在脚本文件中,输入需要执行的命令即可。

编辑脚本

如图所示,只是输入了一个最简单的执行程序命令,进入到nandflash中,然后执行hello这个程序。编辑好之后,保存。

如果没有搭建好的Linux系统环境,要在Windows系统的环境下编辑这个脚本文件,那就需要使用单独的编辑器。这是因为Windows下DOS文本格式的换行符和Linux系统中格式使用的换行符不同,所以使用Windows自带的文本编辑器编辑,在Linux下会出现不能识别换行符的情况。

这里可以推荐给客户两款很方便软件使用:Notepad2和PSPad。在Windows下使用这两款软件编辑这个脚本文件就行,下面分别是使用这两款软件的编辑界面。

使用Notepad2编辑界面

使用PSPad编辑界面

将编辑好的user.sh放到英创Linux主板的/mnt/nandflash/目录下,同时要将需要执行的程序放在user.sh中指定的运行路径。

复制user.sh到nandflash目录下

断开JP1,重新启动主板进入运行模式,便能够自动执行user.sh中的命令,来启动设置好的程序。

可以看到系统开机后,自动执行了hello这个程序。

如果使用了Windows自带的文字编辑器,比如写字板,编辑了user.sh脚本文件。会出现错误提示。

错误提示

这是因为前面提到过的,Linux不能识别DOS文本下的换行符。使用VI打开/mnt/nandflash/中的user.sh查看,会发现换行符的地方多了^M这个符号。

换行的地方多了^M

如果遇见这种情况,进入到/mnt/nandflash/目录中,使用命令dos2unix user.sh可以将DOS文本格式user.sh转换成Linux格式。转换以后,再使用VI进行查看,已经正确。

经过转换的user.sh已经正确

再重启主板,就能够正确的执行程序了。

正确启动程序

.dfma { position: relative; width: 1000px; margin: 0 auto; } .dfma a::after { position: absolute; left: 0; bottom: 0; width: 30px; line-height: 1.4; text-align: center; background-color: rgba(0, 0, 0, .5); color: #fff; font-size: 12px; content:"广告"; } .dfma img { display: block; }
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。