variable-substitution

循环变量的输出显示的值与预期不同
variable-substitution

循环变量的输出显示的值与预期不同

想象一下我当前的工作目录中有两个文件夹:back/和front/。我试图进入他们每个人的内心并做一些事情。从下面的简单脚本: for dir in */ ; do echo "$(dir)" done 我期待这样的输出: back front 然而,我得到的是: back front back front 我不明白。结果是,如果我尝试cd进入该文件夹: for dir in */ ; do echo "$(dir)" cd $(dir) echo "$(pwd)" cd .. done 我得到: back ...

Admin

如何用变量替换字符串?
variable-substitution

如何用变量替换字符串?

我正在尝试编写一个包含循环的脚本,该循环输入一系列包含同一文件的目录,以将文件中的文本字符串替换为与目录名称匹配的变量。 变量是 $i=3,4,5,文件名是 FILE 我到目前为止所写的: for i in ./*z do cd $i if grep -q 'DZ' FILE then sed -i 's/DZ/$iZ/g' FILE fi cd .. done 我得到的是 $iZ,而不是 DZ,而没有改变变量。 我怎样才能解决这个问题? ...

Admin

使用 mv / rename 在 bash shell 脚本中使用多个通配符扩展变量
variable-substitution

使用 mv / rename 在 bash shell 脚本中使用多个通配符扩展变量

我为 Linux 编写了一个 bash shell 脚本,用于根据数据文件中指定的参数移动静态文件夹中的文件。 我已将该脚本简化为最小的可重现示例,以演示我遇到的问题: #!/bin/bash while IFS=" " read -r fldr matchStr do perlExp=\'s/^/\\/home\\/test\\/alpha\\/"$fldr"\\//\' fullmatchStr=testfile\ -\ "$matchStr"\ -\ *.txt rename --verbose "$perlExp" ${ful...

Admin

从文件执行复制命令
variable-substitution

从文件执行复制命令

我有一个DE_CopyOldToNew.txt文件,其中包含一大堆复制命令,用于将旧文件名复制到新文件名。 该文件包含如下行: cp /migrationfiles/Company\ Name\ GmbH/2014.138_Old\ File\ Name.pdf /appl/data/docs/202403/DE_2014.138_NewFile_1.pdf cp /migrationfiles/Company\ Name\ GmbH/2014.139_Old\ File\ Name.pdf /appl/data/docs/202403/DE_2014.13...

Admin

为什么这个脚本变量一直显示为“null”?
variable-substitution

为什么这个脚本变量一直显示为“null”?

我有以下脚本: def String Service_version = sh "cd ./projects/onehome && pwd && cat package.json | grep version" echo "Service_Version_update: $Service_version" echo "My_Version is : ${Service_version}" 输出是: cd ./projects/onehome 13:47:43 + pwd ...

Admin

If-else 参数替换
variable-substitution

If-else 参数替换

我正在使用 bash 运行一系列实验,并希望将日志文件存储在一个目录中,该目录的名称基于实验配置。配置中的某些项目是布尔值(true/false)。以下面的配置为例: batch_size=16 fp16=false bf16=true checkpoint_activations=true 我想将上述配置的实验日志文件作为输入存储在具有以下名称的目录中: output_dir="experiment_bs${batch_size}_dt${fp16 if fp16=true else bf16}_${cp if checkpoint_activation...

Admin

SSH for 循环:传递给变量中捕获的函数的参数未扩展
variable-substitution

SSH for 循环:传递给变量中捕获的函数的参数未扩展

我有几台服务器,其中有几个文件,其中包含我需要解析的部署日期信息,并获取 2 个月或更早的文件的本地副本。 #!/bin/bash # split on new line not space # don't want to quote everything # globbing desired IFS=$'\n' servers=( blue red ) parseDate() { grep 'deploy_date:' $file | \ sed ... | \ # much mor...

Admin

有人可以解释从脚本运行 smartctl 与直接在终端运行 smartctl 时潜在的变量扩展问题吗?
variable-substitution

有人可以解释从脚本运行 smartctl 与直接在终端运行 smartctl 时潜在的变量扩展问题吗?

我正在尝试编写一个脚本来收集一些有关磁盘运行状况的信息,作为自定义 ShredOS 的一部分。我无法理解以下代码片段有什么问题。 #get disk info disk_info=$(lsblk --path -AdJo NAME,SIZE,ROTA) #get names of disks disk_names+=($(jq '.blockdevices[] | .name' <<< "$disk_info")) printf "\n\n# DISK HEALTH REPORTS #\n\n" ...

Admin

bash var 替换在 json 中以在curl中使用
variable-substitution

bash var 替换在 json 中以在curl中使用

团队,我无法替换 json 中的值(myjson)以在curl 命令中使用。有什么提示吗? JENKINS_USERNAME="svc-user" JENKINS_USER_TOKEN="xxxx" JENKINS_INSTANCE_FQDN="sham.blsm.comp.com" INSTANCE="test-verify" CREDENTIAL_ID_NAME="test" USERNAME_KEY="tests" USER_PASSWORD_KEY="testst" ID_DESCRIPTION="asdfasdfasdf" myjson=\''{...

Admin

SSH 的 -t 选项 - 如何远程执行包含管道和变量扩展的复杂命令?
variable-substitution

SSH 的 -t 选项 - 如何远程执行包含管道和变量扩展的复杂命令?

以下脚本由 jim 的计算机运行root,旨在将两个目录共享到 oumaima 的计算机。 #!/usr/bin/bash au=$(echo "$(head -n 1 /etc/doas.conf)"|sed 's/permit//;s/as//;s/root//;s/ //g') dirs=( "/var/lib/transmission-daemon/downloads" "/home/${au}/VisualArts/films_FR" ) dst_ip="[fe80::cc08:9467:8dba:15a9%wlp4s0]" her_h...

Admin

如何在 crontab 中声明和使用保存管理员用户帐户名称的变量?
variable-substitution

如何在 crontab 中声明和使用保存管理员用户帐户名称的变量?

我希望 crontab 是root不可知的,即我不想在其中逐字指定 admin 用户是jim。这就是为什么在我的 crontab 中root引入了变量au。 SHELL=/bin/bash PATH=/usr/bin:/bin:/usr/sbin:/sbin au=$(echo "$(head -n 1 /etc/doas.conf)"|sed 's/permit//;s/as//;s/root//;s/ //g') 5 */4 * * * /home/"${au}"/sync-w-oumaima.sh * * * * * echo "$au">...

Admin

makefile 变量的值是另一个变量的名称
variable-substitution

makefile 变量的值是另一个变量的名称

在 makefile 中,变量的值是另一个变量的名称。我如何将其放入目标内? 例如: my_variable := Hello target: @var_name="my_variable" ; \ result=$($(var_name)) ; \ echo $$result 应该result是Hello. 或者另一个例子: VALUES123 := 1 2 3 CLIENTS_1_IP := 10.100 CLIENTS_2_IP := 10.100 CLIENTS_3_IP := 10.100 cll: @for...

Admin

如何正确定义此变量并将其插入到我的 find 命令中?
variable-substitution

如何正确定义此变量并将其插入到我的 find 命令中?

我编写了一个 Bash 脚本,mscript.sh用于管理我的音乐文件,其中一部分创建了此类文件的列表。 all_exts=" -iname \"*.webm\" -o -iname \"*.mkv\" " #all_exts=' -iname "*.webm" -o -iname "*.mp3" -o -iname "*.mp4" -o -iname "*.mkv" ' #The line below works fine #find "${HOME}/pCloudDrive/SocialSciences/...

Admin

在函数内部定义变量
variable-substitution

在函数内部定义变量

在阅读了该互联网上的某处之后,我发现将命令的输出用作变量时最好执行以下操作: FILE_CORE_NAME="$(/usr/bin/env basename $(/usr/bin/env awk -F "." '{print $1}' <<< "${FILE_TO_PROCESS}"))"; local FILE_CORE_NAME; 但是,当我使用此配置时,FILE_CORE_NAME 派生的值为空。如果我local FILE_CORE_NAME从行中删除尾随,一切都会按预期进行。 是我读错了还是我做错了? ...

Admin

在csh脚本中替换方形总线
variable-substitution

在csh脚本中替换方形总线

我有输入列表: adr[0] adr[1] xadr[0] 我希望我的输出是:adr[*] adr[*] xadr[*] #! /bin/csh -fv set list = "adr[0] adr[1] xadr[2]" foreach f (${list}) set f_tmp = `echo "$f" | sed "s/[0-9]/*/g"` echo "$f_tmp" end 但这行不通。有人可以帮我解决这个问题吗? ...

Admin