完善功能4,完成app的软链接解压"
#!/bin/bash
###########################命令形式###########################
#1、source ./a3.sh 1.07_8.2.2 8xxx
#3、source ./a3.sh 1.07_8.2.2 8xxx 5-0 TOP 32 M
#2、source ./a3.sh 1.07_8.2.1 8xxx 5-0 TOP 32 M 8.2.1 2056 8110 1766 1342
#补充第3点:source ./a3.sh uSA 7xxx 5-0 USAVISION 32 M 8.2.2 2056 8110 1766 1342 app_V220222_N7XXX_M
###########################命令形式###########################ConvenientDirectory()
{project_name="${destdir##*/}" #只拿取destdir路径下的最后一个文件名echo "验证打印****************/ $project_name /**************"
#***************************1**拿到/home/liguoqiang/svnwork 下的所有文件夹名称到num数组下***************************index=0for file_a in ${destdir} $temp_file } == $filemkdir_1 ];then#echo "打印:${num[i]##*/} ${num[i]}"destdir_release=${num[i]##*/}{index_1=0for file_release_xxx in ${num[i]}} == $filemkdir_2 ];thendestdir_n=${num[i]##*/}{index_2=0for file_n_xxx in ${num[i]}}"if [ "${file_release[i]##*/}" == "$parameter2" ];thendestdir_release_Num=${file_release[i]##*/}echo "$destdir_release_Num"fidoneecho "destdir_release_Num = $destdir_release_Num"for i in ${!file_n[@]}; #n目录下遍历do#echo "n文件下的文件名:${file_n[i]##*/}"result_n_app=$(echo ${file_n[i]##*/} | grep "^app")if [ "${file_n[i]##*/}" == "$parameter2" ];thendestdir_n_Num=${file_n[i]##*/}{index_3=0for file_n_app in ${file_n[i]}}#else# echo "遍历$destdir_n_Num文件夹下,没有对比到app开头的文件"fi((index_3++))done}fidoneecho "destdir_n_Num = $destdir_n_Num"echo "destdir_n_Num_app = $destdir_n_Num_app"}CodeExecution()
{echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"echo "1、创建今日份日期文件,且创建release、n文件夹以及下属的对应型号文件夹"echo "2、svn导出最新程序"echo "3、将app\gui中的编译好的文件,拷贝到release下对应型号文件夹下,并且压缩app文件"echo "4、软连接--解压app试验"echo "5、链接处下载ie包,反解压,压缩成ie格式"echo "6、拿取N7XXX、N8XXX不支持序列号SN"echo "7、单独压缩app或者删除"echo "8、压缩app删除"echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"#验证ConvenientDirectory()函数中的遍历效果,可去掉#echo "1、 release文件已存在 : destdir_release = $destdir_release "#echo "n文件已存在 : destdir_n = $destdir_n"#echo "destdir_release_Num = $destdir_release_Num"#echo "destdir_n_Num = $destdir_n_Num"while :doecho -n "Input a number between 1 to 8 或者按 'q' 退出脚本:"read str_1echo "str_1 = $str_1"case $str_1 in1)echo "指令1,创建日期文件夹以及release、n、对应型号文件夹"if [ $kd == $mypath ];thenecho "当前路径是svnwork目录"(if [ ! -e $destdir ];thenecho "$parameter1不存在,开始创建$parameter1"mkdir $parameter1chmod -R 775 $parameter1elseecho "$parameter1存在,进入$parameter1"cd $destdirfi)elseecho "非svnwork目录,进入svnwork目录,创建$1"cd /home/liguoqiang/svnwork(if [ ! -e $destdir ];thenecho "$parameter1不存在,开始创建$parameter1"mkdir $parameter1chmod -R 775 $parameter1elseecho "$parameter1存在,进入$parameter1"cd $destdirfi)pwdfiif [ ! -e $destdir/$filemkdir_1/$parameter2 ];then#if [ $destdir_release == "" ];thensvc=($filemkdir_1 $filemkdir_2)num=${#svc[@]}echo "svc数组中的文件名有:${svc[*]} ; 数量num = $num"echo "文件创建路径:$mypath/$parameter1"for ((i=0;i<num;i++))domkdir -p $parameter1/${svc[$i]}/$parameter2 #创建该条文件夹路线上的所有文件chmod -R 775 $parameter1/${svc[$i]}/$parameter2doneelseecho "$destdir_release、$destdir_n中的$parameter2文件已经存在,请执行其他步骤或输入 'q' 退出"fi;;2)echo "指令2,下载SVN链接"echo "版本下载Input a number between 1 to 5 或者按 'q' 退出case 2(下载链接选择):"echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"echo "1、hybrid_normal下载"echo "2、core_lib_light下载"echo "3、rslib_normal下载"echo "4、rslib_custom下载"echo "6、实验功能:删除rslib_custom、rslib_normal重新下载"echo "q、退出外层case 2(下载链接选择),进入到外层"echo "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"if [ -e $destdir ] && [ "8.2.1" == $parameter7 ];thencd $destdirwhile :doread str_2echo $str_2case $str_2 in1)svn co -r$parameter8 http:;;2)svn co -r$parameter9 http:;;3)svn co -r$parameter10 http:;;4)svn co -r$parameter11 http:;;5)mkdir opensourceln -s /home/public/opensource/opensource_output
全部流程,除第5点的操作打印
liguoqiang@rsby1-virtual-machine:~/svnwork$ source ./a3.sh uSA 7816 5-0 USAVISION 32 M 8.2.2 2056 8110 1766 1342 app_V220224_N7XXX_M
验证打印****************/ uSA /**************
2、 n文件已存在 : destdir_n = n
1、 release文件已存在 : destdir_release = release
release文件存在
n文件存在
7816
destdir_release_Num = 7816
destdir_n_Num = 7816
destdir_n_Num_app = app_V220223_N7XXX_M
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1、创建今日份日期文件,且创建release、n文件夹以及下属的对应型号文件夹
2、svn导出最新程序
3、将app\gui中的编译好的文件,拷贝到release下对应型号文件夹下,并且压缩app文件
4、软连接--解压app试验
5、链接处下载ie包,反解压,压缩成ie格式
6、拿取N7XXX、N8XXX不支持序列号SN
7、单独压缩app或者删除
8、压缩app删除
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Input a number between 1 to 8 或者按 'q' 退出脚本:1str_1 = 1
指令1,创建日期文件夹以及release、n、对应型号文件夹
当前路径是svnwork目录
uSA存在,进入uSA
release、n中的7816文件已经存在,请执行其他步骤或输入 'q' 退出Input a number between 1 to 8 或者按 'q' 退出脚本:2
str_1 = 2
指令2,下载SVN链接
版本下载Input a number between 1 to 5 或者按 'q' 退出case 2(下载链接选择):
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1、hybrid_normal下载
2、core_lib_light下载
3、rslib_normal下载
4、rslib_custom下载
6、实验功能:删除rslib_custom、rslib_normal重新下载
q、退出外层case 2(下载链接选择),进入到外层
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
{7}=8.2.2Input a number between 1 to 8 或者按 'q' 退出脚本:3
str_1 = 3
指令3,将app\gui中的编译好的文件,拷贝到release下对应型号文件夹下,并且压缩app文件
cp /home/liguoqiang/svnwork/uSA/hybrid_normal/APP/dvr/main/release/* /home/liguoqiang/svnwork/uSA/release/7816/ -rf
cp Release/images_5-0
cp Release/language_USAVISION/*
cp Release/style_5-0
cp Release/font/yahei_arial_gothic_unicode[full]_32M.ttf
Found a valid exportable SQUASHFS superblock on app_V220224_N7XXX_M.Compression used xzInodes are compressedData is compressedFragments are compressedXattrs are compressedFragments are present in the filesystemAlways_use_fragments option is not specifiedDuplicates are removedXattrs are storedFilesystem size 51391.64 Kbytes (50.19 Mbytes)Block size 131072Number of fragments 23Number of inodes 908Number of ids 2Parallel mksquashfs: Using 16 processors
Scanning existing filesystem...
Read existing filesystem, 907 inodes scanned
Appending to existing 4.0 filesystem on app_V220224_N7XXX_M, block size 131072
All -b, -noI, -noD, -noF, -noX, no-duplicates, no-fragments, -always-use-fragments,
-exportable and -comp options ignoredIf appending is not wanted, please re-run with -noappend specified!Recovery file "squashfs_recovery_app_V220224_N7XXX_M_33226" written
If Mksquashfs aborts abnormally (i.e. power failure), run
mksquashfs dummy app_V220224_N7XXX_M -recover squashfs_recovery_app_V220224_N7XXX_M_33226
to restore filesystem----------------这是app文件存在,然后执行步骤3,又把app压缩一遍的打印------------------------
Source directory entry crash.sh already used! - trying crash.sh_1
Source directory entry key.pem already used! - trying key.pem_1
Source directory entry h265IFrame already used! - trying h265IFrame_1
Source directory entry intelligent_file already used! - trying intelligent_file_1
Source directory entry certs already used! - trying certs_1
Source directory entry cmd-executor already used! - trying cmd-executor_1
Source directory entry custom-config.ini already used! - trying custom-config.ini_1
Source directory entry kmod already used! - trying kmod_1
Source directory entry T2uSvrDeamon already used! - trying T2uSvrDeamon_1
Source directory entry slave_files.ini already used! - trying slave_files.ini_1
Source directory entry JpegIFrame.jpeg already used! - trying JpegIFrame.jpeg_1
Source directory entry font already used! - trying font_1
Source directory entry Legal-notices-and-Open-Source-Software-Licenses.txt already used! - trying Legal-notices-and-Open-Source-Software-Licenses.txt_1
Source directory entry h264IFrame already used! - trying h264IFrame_1
Source directory entry h264IFrame-1080P already used! - trying h264IFrame-1080P_1
Source directory entry raysharp_dvr already used! - trying raysharp_dvr_1
Source directory entry h264IFrame-720P already used! - trying h264IFrame-720P_1
Source directory entry lib already used! - trying lib_1
Source directory entry getImageVersion already used! - trying getImageVersion_1
Source directory entry cursor-image already used! - trying cursor-image_1
Source directory entry images already used! - trying images_1
Source directory entry parted already used! - trying parted_1
Source directory entry T2uSvr.conf already used! - trying T2uSvr.conf_1
Source directory entry confgure already used! - trying confgure_1
Source directory entry vg_boot.sh already used! - trying vg_boot.sh_1
Source directory entry mkntfs already used! - trying mkntfs_1
Source directory entry language already used! - trying language_1
Source directory entry cacert.pem already used! - trying cacert.pem_1
Source directory entry bin already used! - trying bin_1
Source directory entry upgrade.sh already used! - trying upgrade.sh_1
Source directory entry flitetts already used! - trying flitetts_1
Source directory entry RsAgent already used! - trying RsAgent_1
Source directory entry start-qt-gui.sh already used! - trying start-qt-gui.sh_1
Source directory entry ca.pem already used! - trying ca.pem_1
Source directory entry ntfs-3g already used! - trying ntfs-3g_1
Source directory entry ethtool already used! - trying ethtool_1
Source directory entry raysharp-hdvr-ui already used! - trying raysharp-hdvr-ui_1
Source directory entry ntupgrade already used! - trying ntupgrade_1
Source directory entry P2PTunnelServerDeamon already used! - trying P2PTunnelServerDeamon_1
Source directory entry cmd-executor.sh already used! - trying cmd-executor.sh_1
Source directory entry wpa_supplicantDeamon already used! - trying wpa_supplicantDeamon_1
Source directory entry P2PTunnelServer already used! - trying P2PTunnelServer_1
Source directory entry T2uSvr already used! - trying T2uSvr_1
Source directory entry snmpd already used! - trying snmpd_1
Source directory entry mibs already used! - trying mibs_1
Source directory entry style already used! - trying style_1
[==========================================================================================================================================================================/] 1744/1744 100%Exportable Squashfs 4.0 filesystem, xz compressed, data block size 131072compressed data, compressed metadata, compressed fragments, compressed xattrsduplicates are removed
Filesystem size 51408.88 Kbytes (50.20 Mbytes)22.08% of uncompressed filesystem size (232806.80 Kbytes)
Inode table size 16242 bytes (15.86 Kbytes)24.75% of uncompressed inode table size (65618 bytes)
Directory table size 18210 bytes (17.78 Kbytes)32.90% of uncompressed directory table size (55345 bytes)
Number of duplicate files found 928
Number of inodes 1815
Number of files 1780
Number of fragments 23
Number of symbolic links 10
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 25
Number of ids (unique uids + gids) 2
Number of uids 1liguoqiang (1030)
Number of gids 1rsteam (1002)
压缩app文件的名称 = app_V220224_N7XXX_MInput a number between 1 to 8 或者按 'q' 退出脚本:8
str_1 = 8
8、压缩app删除,删除目录/home/liguoqiang/svnwork/uSA/releaseInput a number between 1 to 8 或者按 'q' 退出脚本:7
str_1 = 7
7、单独压缩app
Parallel mksquashfs: Using 16 processors
Creating 4.0 filesystem on app_V220224_N7XXX_M, block size 131072.
[==========================================================================================================================================================================-] 1744/1744 100%Exportable Squashfs 4.0 filesystem, xz compressed, data block size 131072compressed data, compressed metadata, compressed fragments, compressed xattrsduplicates are removed
Filesystem size 51391.43 Kbytes (50.19 Mbytes)44.15% of uncompressed filesystem size (116401.05 Kbytes)
Inode table size 8014 bytes (7.83 Kbytes)24.41% of uncompressed inode table size (32830 bytes)
Directory table size 9212 bytes (9.00 Kbytes)36.84% of uncompressed directory table size (25003 bytes)
Number of duplicate files found 38
Number of inodes 908
Number of files 890
Number of fragments 23
Number of symbolic links 5
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 13
Number of ids (unique uids + gids) 2
Number of uids 1liguoqiang (1030)
Number of gids 1rsteam (1002)
压缩app文件的名称 = app_V220224_N7XXX_MInput a number between 1 to 8 或者按 'q' 退出脚本:6
str_1 = 6
6、拿取N7XXX、N8XXX不支持序列号SN
custom-config.ini文件存在Input a number between 1 to 8 或者按 'q' 退出脚本:9
str_1 = 9
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1、创建今日份日期文件,且创建release、n文件夹以及下属的对应型号文件夹
2、svn导出最新程序
3、将app\gui中的编译好的文件,拷贝到release下对应型号文件夹下,并且压缩app文件
4、软连接试验,解压app
5、链接处下载ie包,反解压,压缩成ie格式
6、拿取N7XXX、N8XXX不支持序列号SN
7、单独压缩app或者删除
8、压缩app删除
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Input a number between 1 to 8 或者按 'q' 退出脚本:4
str_1 = 4
进入/home/liguoqiang/svnwork/uSA/n/7816,完成app的软链接解压
进入:/home/liguoqiang/svnwork/uSA/n/7816 软链接解压路径
1、2存在,删除,再进行'4'操作
1为空,删除
Input a number between 1 to 8 或者按 'q' 退出脚本:4
str_1 = 4
进入/home/liguoqiang/svnwork/uSA/n/7816,完成app的软链接解压
进入:/home/liguoqiang/svnwork/uSA/n/7816 软链接解压路径
app文件存在7816中,开始软链接解压
[sudo] password for liguoqiang:
mount: warning: 1 seems to be mounted read-only.
Input a number between 1 to 8 或者按 'q' 退出脚本:9
str_1 = 9
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1、创建今日份日期文件,且创建release、n文件夹以及下属的对应型号文件夹
2、svn导出最新程序
3、将app\gui中的编译好的文件,拷贝到release下对应型号文件夹下,并且压缩app文件
4、软连接试验,解压app
5、链接处下载ie包,反解压,压缩成ie格式
6、拿取N7XXX、N8XXX不支持序列号SN
7、单独压缩app或者删除
8、压缩app删除
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Input a number between 1 to 8 或者按 'q' 退出脚本:q
str_1 = q
=========================
退出脚本!!!
=========================
liguoqiang@rsby1-virtual-machine:~/svnwork$
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!