[問題] 利用 Script 批次選取檔案?
我現在手上有一群檔案,檔名從 Test0001.int 一直編到 Test0540.int
也就是一共 540 個序列檔案
而這 540 個檔案中每 9 個構成一組,
因此,如果我想要挑每一組的第一個檔案分析,
我就必須從這裡面選取
Test0001.int Test0010.int Test0019.int Test0028.int
Test0037.int Test0046.int Test0055.int ...
也就是取出編號 Mod 9 = 1 的所有檔案
如何利用 bash script, 把特定的檔案 (say, mod 9 = 1)
複製到給定子目錄 (say, 1mod9) 之下呢?
------------ 基本的想法
mod9.sh
#!/bin/bash
K = $1
# 如果 ../$1.."mod9" 這個子目錄不存在的話建立
while [如果找得到 "Test"..$K..".int" 這個檔案]
# 這很麻煩,K我必須把不滿四位數的前面填零
# Bash Script 下,字串可以這樣直接串嗎?
do
cp "Test"..$K..".int" ../$1.."mod9"
# 相對目錄我也不知道要怎麼表達 Orz
K = $K + 9
done
-------------
$1 相當於 c++ 的 argv[1],所以我只要打 ./mod9.sh 1
就能把當前目錄下的那些檔案都複製一份到指定目錄...... 希望 0.0"
感覺是可行,不過這些指令上的細節不知道該怎麼寫
我幾乎沒自己寫過 bash script, 平常頂多是拿別人寫好現成的改一改
有請各位協助,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.102.142
※ 編輯: TacoEater 來自: 140.112.102.142 (03/29 17:30)
推
03/29 17:57, , 1F
03/29 17:57, 1F
→
03/29 18:02, , 2F
03/29 18:02, 2F
→
03/29 18:02, , 3F
03/29 18:02, 3F
→
03/29 18:03, , 4F
03/29 18:03, 4F
推
03/29 21:23, , 5F
03/29 21:23, 5F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):