bash 中不同脚本的不同功能
Different functions from different scripts in bash
我想制作一个从不同脚本调用函数的脚本,但是一旦我调用了另一个脚本,每个内部函数都无法识别它。
我不知道如何继续下去。我试图删除调用,但是一旦我删除了对另一个脚本的调用,显然,这些函数就不起作用了。
#!/bin/bash
. generalFunct
is_stora_mounted="true"
counter=0
user1000=$(cut -d: -f1,3 /etc/passwd | egrep ':[0-9]{4}$' | cut -d: -f1)
doCheckSudo
doDisableCdrom
doCheckOS
doAddProgramSources
doInstallOtherDependency
doAddSources
doAddAnsibleSources
doInstallPrinter
doInstallSenior
doAddAnsibleSources() {
bla bla bla bla
}
doInstallSenior() {
bla bla bla bla bla bla
}
doInstallVPN
doUpgradeAndUpdate
doInstallWifiDriver
doAddCertificates
doDownloadDockerImages
[BLA BLA BLA IT'S TO KEEP THE PRIVACY ON MY WORKPLACE]
doAddAnsibleSources 和 doInstallSenior 是内部函数。
本来想工作的,结果说找不到订单(参考函数名)
问题是函数是在调用它们之后定义的。将它们移到脚本顶部,然后重试。
doAddAnsibleSources() {
...
}
doAddAnsibleSources
而不是:
doAddAnsibleSources
doAddAnsibleSources() {
...
}
这是必需的,因为 bash 是解释环境,不做任何预处理,只是逐行执行。当以这种方式读取文件时,它会尝试执行它还没有看到的函数。
我想制作一个从不同脚本调用函数的脚本,但是一旦我调用了另一个脚本,每个内部函数都无法识别它。
我不知道如何继续下去。我试图删除调用,但是一旦我删除了对另一个脚本的调用,显然,这些函数就不起作用了。
#!/bin/bash
. generalFunct
is_stora_mounted="true"
counter=0
user1000=$(cut -d: -f1,3 /etc/passwd | egrep ':[0-9]{4}$' | cut -d: -f1)
doCheckSudo
doDisableCdrom
doCheckOS
doAddProgramSources
doInstallOtherDependency
doAddSources
doAddAnsibleSources
doInstallPrinter
doInstallSenior
doAddAnsibleSources() {
bla bla bla bla
}
doInstallSenior() {
bla bla bla bla bla bla
}
doInstallVPN
doUpgradeAndUpdate
doInstallWifiDriver
doAddCertificates
doDownloadDockerImages
[BLA BLA BLA IT'S TO KEEP THE PRIVACY ON MY WORKPLACE]
doAddAnsibleSources 和 doInstallSenior 是内部函数。
本来想工作的,结果说找不到订单(参考函数名)
问题是函数是在调用它们之后定义的。将它们移到脚本顶部,然后重试。
doAddAnsibleSources() {
...
}
doAddAnsibleSources
而不是:
doAddAnsibleSources
doAddAnsibleSources() {
...
}
这是必需的,因为 bash 是解释环境,不做任何预处理,只是逐行执行。当以这种方式读取文件时,它会尝试执行它还没有看到的函数。