我想堆疊一些文本文件作爲新列。該文件被命名爲energies_Strength0.0BosonsXXX.txt其中XXX爲80,90,100或110當我運行下面的命令:括號擴展步進增量不工作bash
paste energies_Strength0.0Bosons{110..80..10}.txt | column -s $'\t' -t > energies_Strength0.0.txt
我得到以下錯誤:
paste: energies_Strength0.0Bosons{110..80..10}.txt: No such file or directory
paste: energies_Strength0.1Bosons{110..80..10}.txt: No such file or directory
paste: energies_Strength0.05Bosons{110..80..10}.txt: No such file or directory
paste: energies_Strength0.15Bosons{110..80..10}.txt: No such file or directory
了相同的命令的工作方式很好,如果文件索引在單位步驟。這是,如果XXX = {80,81,82,...,109,110},我運行命令:
paste energies_Strength0.0Bosons{110..80}.txt | column -s $'\t' -t > energies_Strength0.0.txt
編輯:基於
你好,我曾嘗試以下線的主意:
#$ -S /bin/bash
LANG=C
for ((i=110; i>=80; i-=10));
do
paste energies_Strength0.0Bosons$i.txt | column -s $'\t' -t > energies_Strength0.0.txt
done
但它只粘貼... Bosons80.txt文件。我需要建立一個結構如下所示:
paste ...80.txt ...90.txt ...100.txt ...110.txt | column -s $'\t' -t > energies_Strength0.0.txt
運行'echo {110..80..10} .txt'並看看你得到了什麼。 – anubhava
我只是簡單地得到了'{110..80..10} .txt',我猜這意味着擴展只是不起作用。順便說一下,'echo {110..80} .txt'確實有效。我在OSX 10.6.4 – cacosomoza
沒有人會提及'{11..8} 0' –