我对ssh,终端编程非常陌生,我有一个问题要问。
已创建测试平台脚本以允许该过程:
将单个文件从.js移动到.js.org,进程在整个目录中完成
将特定文件“A.js”从另一个文件复制到整个父目录中的现有文件
因此,此测试平台脚本的目的是允许进程在用户决定上传新文件时运行:例如,图像文件到服务器,它将始终调用此脚本来执行点中提到的更改1和2。
然而,我只是设法提出以下代码,从那时起我就陷入了困境。此外,当我尝试运行它时,始终会提示以下错误行。
awk:9:意外字符'。'
有任何帮助吗?非常感谢。
我已附上以下代码供您阅读:
代码:
#! /bin/bash
# set search path
dirpath = "."
find $dirpath -type f | awk 'BEGIN{pattern="\.js"} $0 ~ pattern {
printf "Checking => %s\n",$0
if ( $0 ~ /pano2vr_player\.js$/) {
printf "Detect and Move Command => mv %s %s .org\n",$0, $0
printf "Executing\n"
system(mv $0. $0.org)
system(cp property107/360/4/pano2vr_player.js $dir)
}
}'
答案 0 :(得分:0)
忘记在系统内(""),应该包含在""这样它就会将它视为一个字符串,并防止字符串在执行cmd时中断。
#! /bin/bash
# set search path
dirpath = "."
srcpath = "/var/www/html/spacetobe/js"
find $dirpath -type f | awk 'BEGIN{pattern="\.js"} $0 ~ pattern {
printf "Checking => %s\n",$0
if ( $0 ~ /pano2vr_player\.js$/) {
printf "Detect and Move Command => mv %s %s.org\n",$0, $0
printf "Executing\n"
system("mv " $0 " " $0 ".org")
printf "cp Command => cp %s/pano2vr_player.js %s\n","/var/www/html/spacetobe/js", $dirpath
system("cp -f /var/www/html/spacetobe/js/pano2vr_player.js " $dirpath)
}
}'