You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In some scenarios, scripts are executed using busybox/bash in the system environment, which does not support string subscripting. When encountering string subscripting, an error will be reported.
For example,the following code will result in an error message 'syntax error: bad substitution' when executed.
read -r line < "/proc/self/stat"
stat=$line
stime=${stat[21]}
Can we modify it to the following?
diff --git a/etc/rc.d/init.d/functions b/etc/rc.d/init.d/functions
index 0d973b3..b4898be 100644
--- a/etc/rc.d/init.d/functions
+++ b/etc/rc.d/init.d/functions
@@ -119,8 +119,7 @@ __kill_pids_term_kill_checkpids() {
[ ! -e "/proc/$pid" ] && continue
read -r line < "/proc/$pid/stat" 2> /dev/null
- stat=($line)
- stime=${stat[21]}
+ stime=$(cat /proc/$pid/stat | cut -d" " -f22)
[ -n "$stime" ] && [ "$base_stime" -lt "$stime" ] && continue
remaining="$remaining$pid "
@@ -141,8 +140,7 @@ __kill_pids_term_kill() {
# We can't initialize stat & base_stime on the same line where 'local'
# keyword is, otherwise the sourcing of this file will fail for ksh...
- stat=($(< /proc/self/stat))
- base_stime=${stat[21]}
+ base_stime=$(cat /proc/self/stat | cut -d" " -f22)
if [ "$1" = "-d" ]; then
delay=$2
The text was updated successfully, but these errors were encountered:
In some scenarios, scripts are executed using busybox/bash in the system environment, which does not support string subscripting. When encountering string subscripting, an error will be reported.
For example,the following code will result in an error message 'syntax error: bad substitution' when executed.
Can we modify it to the following?
The text was updated successfully, but these errors were encountered: