优化命令检查,使用 type 替代 command -v 以提高兼容性

This commit is contained in:
Ing 2025-05-08 13:09:31 +08:00
parent 2fb2d22ecb
commit b088ff7a14
5 changed files with 9 additions and 10 deletions

View File

@ -79,11 +79,10 @@ jobs:
sudo pip3 install -U -r scripts/requirements.txt
python3 scripts/func.py getmodels -w "rr/ws/initrd" -j "docs/models.json" -x "docs/models.xlsx"
python3 scripts/func.py getpats -w "rr/ws/initrd" -j "docs/pats.json" -x "docs/pats.xlsx"
python3 scripts/func.py getaddons -w "rr/ws" -j "docs/addons.json" -x "docs/addons.xlsx"
python3 scripts/func.py getmodules -w "rr/ws" -j "docs/modules.json" -x "docs/modules.xlsx"
python3 scripts/func.py getpats -w "rr/ws/initrd" -j "docs/pats.json" -x "docs/pats.xlsx"
- name: Upload to Artifacts
if: success()
uses: actions/upload-artifact@v4

View File

@ -23,10 +23,10 @@ function checkBootLoader() {
[ ! -w "${PART1_PATH}" ] && return 1
[ ! -w "${PART2_PATH}" ] && return 1
[ ! -w "${PART3_PATH}" ] && return 1
command -v awk >/dev/null 2>&1 || return 1
command -v cut >/dev/null 2>&1 || return 1
command -v sed >/dev/null 2>&1 || return 1
command -v tar >/dev/null 2>&1 || return 1
type awk >/dev/null 2>&1 || return 1
type cut >/dev/null 2>&1 || return 1
type sed >/dev/null 2>&1 || return 1
type tar >/dev/null 2>&1 || return 1
return 0
}
@ -220,7 +220,7 @@ function _set_conf_kv() {
# @ - url list
function _get_fastest() {
local speedlist=""
if command -v ping >/dev/null 2>&1; then
if type ping >/dev/null 2>&1; then
for I in "$@"; do
speed=$(LC_ALL=C ping -c 1 -W 5 "${I}" 2>/dev/null | awk -F'[= ]' '/time=/ {for(i=1;i<=NF;i++) if ($i=="time") print $(i+1)}')
speedlist+="${I} ${speed:-999}\n" # Assign default value 999 if speed is empty

View File

@ -39,7 +39,7 @@ function create() {
sudo apt install -y locales busybox dialog gettext sed gawk jq curl
sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils dosfstools cpio xz-utils lz4 lzma bzip2 gzip zstd
# sudo snap install yq
if ! command -v yq &>/dev/null || ! yq --version 2>/dev/null | grep -q "v4."; then
if ! type yq &>/dev/null || ! yq --version 2>/dev/null | grep -q "v4."; then
sudo curl -kL https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -o /usr/bin/yq && sudo chmod a+x /usr/bin/yq
fi

View File

@ -329,7 +329,7 @@ function createvmx() {
local BLIMAGE=${1}
local VMNAME=${2}
if ! command -v qemu-img &>/dev/null; then
if ! type qemu-img &>/dev/null; then
sudo apt install -y qemu-utils
fi

View File

@ -9,7 +9,7 @@
# sudo apt install -y locales busybox dialog gettext sed gawk jq curl
# sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils dosfstools cpio xz-utils lz4 lzma bzip2 gzip zstd
# # sudo snap install yq
# if ! command -v yq &>/dev/null || ! yq --version 2>/dev/null | grep -q "v4."; then
# if ! type yq &>/dev/null || ! yq --version 2>/dev/null | grep -q "v4."; then
# sudo curl -kL https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -o /usr/bin/yq && sudo chmod a+x /usr/bin/yq
# fi
#