如何获取此find命令以将结果返回到变量中?它可以在命令行上运行,但在脚本中没有那么多。
BZIP_FILES="$(find /dev/runs/sample -maxdepth 1 -type f -name \"*L*_R1*.fastq.gz\" | sort | head -1)"
目录/ dev / runs / sample
17-ABCC7-A-02-00-R_GAATCTTCGC_L001_R1_001.fastq.gz
17-ABCC7-A-02-00-R_GAATCTTCGC_L002_R1_001.fastq.gz
17-ABCC7-A-02-00-R_GAATCTTCGC_L003_R1_001.fastq.gz
17-ABCC7-A-02-00-R_GAATCTTCGC_L004_R1_001.fastq.gz
bak
fusion
SampleSheet.csv
结果应为17-ABCC7-A-02-00-R_GAATCTTCGC_L001_R1_001.fastq.gz
答案 0 :(得分:0)
替换转义的引号以使用单引号查找应该有效,即'*L*_R1*.fastq.gz\'
。
答案 1 :(得分:0)
$(
和)
双引号之间的是语法式的,因此$()
可以轻松嵌套。
例如
echo "$(echo "$(echo "ok")")"
在find -name选项中也不需要'**',必须引用它以避免扩展glob
BZIP_FILES="$(find /dev/runs/sample -maxdepth 1 -type f -name '*L*_R1*.fastq.gz' | sort | head -1)"
BZIP_FILES="$(find /dev/runs/sample -maxdepth 1 -type f -name "*L*_R1*.fastq.gz" | sort | head -1)"