bash - 如何使用从列表中获取的变量输入文件 - bash
问题描述
可以说我有一个文件myfile.csv
。在这个文件中,我有一个这样的列表:
black
white
grey
orange
red
我希望任何行都是一个变量,并使用该变量进入具有此名称的目录。
例子:
for i in $( myfile.csv ); do
cd /directory/$i && cat anotherfile.txt
它不起作用。我会很高兴得到你的帮助。:)
解决方案
您无需输入目录即可对包含的文件进行分类。遍历文件的所有行是while
and的工作read
:
while IFS= read -r dir; do
if [[ -f "$dir/anotherfile.txt" ]]; then
cat "$dir/anotherfile.txt"
else
printf 'WARNING: %s not found\n' "$dir/anotherfile.txt"
fi
done < myfile.csv
当然,这仅在您的myfile.csv
文件每行只有一个目录名时才有效...
推荐阅读
- typescript - 从 createAsyncThunk 为 configureMockStore 类型转换调度
- c# - 传递页面 ID 时后退按钮上的外壳路由问题
- java - 使用 Java 轻松解析 JSON
- python - Keras 将 Dense 的输出连接成一个矩阵
- splunk - 我可以在 Splunk 中动态引用令牌吗?
- sql - 如何在 SQL 的新列中使用案例信息?
- reactjs - 使用 React 路由器时直接访问子文件夹?
- snowflake-cloud-data-platform - 为什么在此作业运行中总分区数为 1 而扫描的分区数更大?
- python - ImportError:无法导入名称“urlencode”
- sap-cloud-platform - CF 子域的 mta.yaml 中是否有任何占位符表示法?