makefile for loop 問題 - Linux

Blanche avatar
By Blanche
at 2021-08-23T21:01

Table of Contents

※ 引述《rickieyang (Rickie Yang)》之銘言:
: ※ 引述《Wudc (二寶來啦!!)》之銘言:
: : 想請教一下,如果有這樣一個text file,
: : Text.txt:
: : a1 b1 c1
: : a2 b2 c2
: : ...
: : a100 b100 c100
: : 要怎麼樣在makefile的 for loop 當中用三個變數分別代表 a1~a100 b1~b100 c1~c100呢?
: : 用 for i in $$(cat Text.txt)這樣的寫法可以取出裡面的字串
: : 但這樣沒辦法在一次迴圈中同時取得 a1 b1 c1
: : 不得有沒有辦法在一次迴圈中同時取得a1 b1 c1的字串呢?
: makefile 我不懂, 不過從 shell script 角度來看.
: rickie@MBP16 0 % cat Text.txt
: a1 b1 c1
: a2 b2 c2
: a100 b100 c100
: rickie@MBP16 0 % cat Text.sh
: #!/bin/bash
: OldIFS=${IFS}
: IFS=$'\n'
: for i in $(cat Text.txt)
: do
: IFS=${OldIFS}
: arr=($i)
: printf "att1:%5s att2:%5s att3:%5s\n" ${arr[0]} ${arr[1]} ${arr[2]}
: done
: OBrickie@MBP16 0 % ./Text.sh
: att1: a1 att2: b1 att3: c1
: att1: a2 att2: b2 att3: c2
: att1: a100 att2: b100 att3: c100
: rickie@MBP16 0 %
: 或許你可以根據需要修改


這裡推薦awk 可以很輕鬆的處理一行一行的文檔

%% cat Text.txt

a1 b1 c1
a2 b2 c3

%% cat ./script.awk
#! /usr/bin/awk -f

BEGIN { shell = "bash" }

{ printf "./my_program -a %s -b %s -c %s\n", $1, $2, $3 | shell }

END { close(shell) }

%% ./script.awk Text.txt

等同於執行

%% ./my_program -a a1 -b b1 -c c1
%% ./my_program -a a2 -b b2 -c c2

--
Tags: Linux

All Comments

Audriana avatar
By Audriana
at 2021-08-25T19:19

Manjaro bash completion變紅色

Erin avatar
By Erin
at 2021-08-22T20:50
自問自答一下 原來在Ubuntu下之所以會是普通白色 是因為$LS_COLORS裡面設mi=00 也就是說 completion list還是被當作不存在的檔案 只是色碼為00看不出來異常 在.bashrc裡面改mi的值就可以實驗出來 Manjaro下把mi改成00 completion li ...

Manjaro bash completion變紅色

Carolina Franco avatar
By Carolina Franco
at 2021-08-22T15:52
這問題好像很冷門 查不到什麼資料 大概就像這兩篇說的 https://unix.stackexchange.com/questions/481493/ https://forums.gentoo.org/viewtopic-p-8628108.html 就是說 completion list似乎被當成 ...

用fcitx解決gcin輸入框架問題

Carolina Franco avatar
By Carolina Franco
at 2021-08-21T16:02
系統:Linux mint 20.0 不知道大家在用 gcin ibus 等輸入法框架時有沒有遇過一些bug? 像是數字鍵無法使用、輸入框亂跳 無法啟動輸入法、按鍵沒有作用 特定軟體 (Olive) 無法輸入中文、自訂詞無效 輸入法失憶,記不住我的常用詞等等... 後來換到 fcitx 之後,這 ...

tmux control mode?

Rae avatar
By Rae
at 2021-08-20T09:20
有人在 linux terminal 用過 tmux control mode 嗎? 換到 macOS 裡面的 iterm2 之後才發現 tmux 有一個 control mode,用了之後就會擁有原本 terminal 的 快捷鍵。像是分割畫面、新增分頁,關閉分頁之類的 功能。快捷鍵會比較不容易跟 ema ...

安裝oracle 磁碟分割請益

Lauren avatar
By Lauren
at 2021-08-19T10:50
目前要在Centos7安裝oracle 12C 簡易安裝完Centos7後 (用預設20G去簡單劃分swap和data 沒特別給home~) 開始安裝 oracle 12C 全文依照wiki linux安裝Oracle https://reurl.cc/eEroVK 目錄按文去建立 沒想到第一關就 ...