shell - 如何在 shell 中获取 {} 的值?
问题描述
find . -name "*.network" -o -name "*.index" | xargs -n 1 -I {} -P 5 sh -c "ncols=3; filename={}; echo $filename"
我想获取存储在变量中的文件名。通过设置 filename={} 和 echo filename,我在控制台中没有任何输出。
由于我想使用多线程。xargs 在我的脚本中是必需的。
我使用 aicastell 建议的单引号。但我想在引号内使用 awk。引号内的单引号应该怎么做?\s 没有用。
有人可以帮我吗?
解决方案
你可以这样做:
for FILENAME in $(find . -name "*.network" -o -name "*.index")
do
# process $FILENAME
done
推荐阅读
- python - 如何更改禁用的 ttk 按钮的前景色?
- cmake - 在 Clion 上编译 Opensips:缺少 tap.h,缺少哪个库?
- arduino - 如何为 Atmega328p/Arduino Nano 实现串行 USART 通信中断?
- bash - 使用 bash 脚本 grep 输出和验证的 curl 命令
- c - seccomp:从父级,查找哪个系统调用导致子级在 SIGSYS 上死亡
- jenkins - Gradle 复制文件任务无法通过 Jenkins 复制到映射的网络驱动器
- udp - 两个 Indy UDP 服务器之间的连接
- java - 如何根据长度逐字切割字符串?
- git - 从上游创建一个新分支
- regex - regexp_replace 替换数字中的逗号