You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unix/Linux x86_64需求:从根目录执行命令拼接文件名与首行

实现指定目录下文件与首行拼接输出的Unix命令

要不用切换到目标目录/bin/etc/target,同时实现和cd进去后执行原命令相同的效果,有两种简单可行的方式:

方法一:使用子shell模拟目录切换

通过子shell先切换到目标目录,再执行原awk命令,执行完后自动回到当前工作目录,完全复刻在目标目录内执行的效果:

(cd /bin/etc/target && awk '{print FILENAME "," $0; nextfile}' *)

方法二:直接处理指定路径文件并提取纯文件名

如果不想切换目录,可以直接指定文件路径,并用awk的字符串处理功能去掉路径前缀,只保留文件名:

awk '{print gensub(/.*\//, "", 1, FILENAME) "," $0; nextfile}' /bin/etc/target/*

注:gensub是GNU awk的特性,如果使用POSIX标准awk,可替换为split(FILENAME, arr, "/"); print arr[length(arr)] "," $0; nextfile

两种方法执行后,都会输出类似以下格式的内容:

file1.csv,header,2
file2.csv,header,3
file3.csv,header,4

内容的提问来源于stack exchange,提问作者sunny

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 07:02:35