亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 2857 | 回復: 15
打印 上一主題 下一主題

[文本處理] 再請教一個關于自動代入變量的問題 [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2014-08-06 20:15 |只看該作者 |倒序瀏覽
本帖最后由 tasteoftime_90 于 2014-08-06 20:16 編輯

test=$(grep -Po '(?<=xxoo )\d+' a1-1.log |tail -5 |awk '{print ;}')
echo "$test" >> test.txt
其中a1-1.log有既定的的幾個 例如:a1-1.log、a1-2.log、b1-1.log、b1-2.log這四個
請教下怎么實現(xiàn)執(zhí)行一次shell 自動把a1-1.log、a1-2.log、b1-1.log、b1-2.log這四個依次代入,輸出各各結果?

論壇徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年紀念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役紀念章
日期:2022-04-24 14:33:24
2 [報告]
發(fā)表于 2014-08-06 21:24 |只看該作者
  1. for file in a1-1.log a1-2.log b1-1.log b1-2.log; do
  2.     test=$(grep -Po '(?<=xxoo )\d+' $file |tail -5 |awk '{print ;}')
  3.     echo "$test" >> test.txt
  4. done
復制代碼

論壇徽章:
0
3 [報告]
發(fā)表于 2014-08-07 10:48 |只看該作者
假若“a1-1.log、a1-2.log、b1-1.log、b1-2.log”我是以
a1-1.log=$(xxxxxxx |awk '{print ;}')
a1-2.log=$(xxxxxxx |awk '{print ;}')
b1-1.log=$(xxxxxxx |awk '{print ;}')
b1-2.log=$(xxxxxxx |awk '{print ;}')
這種形式輸出的,請問你給的代碼應該怎么修改呢?
回復 2# Shell_HAT


   

論壇徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年紀念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役紀念章
日期:2022-04-24 14:33:24
4 [報告]
發(fā)表于 2014-08-07 12:31 |只看該作者
回復 3# tasteoftime_90
  1. a1-1.log=$(xxxxxxx |awk '{print ;}')
  2. a1-2.log=$(xxxxxxx |awk '{print ;}')
  3. b1-1.log=$(xxxxxxx |awk '{print ;}')
  4. b1-2.log=$(xxxxxxx |awk '{print ;}')
  5. for file in a1-1.log a1-2.log b1-1.log b1-2.log; do
  6.     test=$(echo "$file" | grep -Po '(?<=xxoo )\d+' |tail -5 |awk '{print ;}')
  7.     echo "$test" >> test.txt
  8. done
復制代碼

論壇徽章:
0
5 [報告]
發(fā)表于 2014-08-07 14:13 |只看該作者
不行呀 我直接測試 echo a1-1.log |grep -Po '(?<=xxoo )\d+' 沒有任何結果輸出的 回復 4# Shell_HAT


   

論壇徽章:
0
6 [報告]
發(fā)表于 2014-08-07 14:15 |只看該作者
按照你的思路是不是想呈現(xiàn) cat a1-1.log |grep -Po '(?<=xxoo )\d+' |tail -5 這種效果?但echo好像不行回復 4# Shell_HAT


   

論壇徽章:
145
技術圖書徽章
日期:2013-10-01 15:32:13戌狗
日期:2013-10-25 13:31:35金牛座
日期:2013-11-04 16:22:07子鼠
日期:2013-11-18 18:48:57白羊座
日期:2013-11-29 10:09:11獅子座
日期:2013-12-12 09:57:42白羊座
日期:2013-12-24 16:24:46辰龍
日期:2014-01-08 15:26:12技術圖書徽章
日期:2014-01-17 13:24:40巳蛇
日期:2014-02-18 14:32:59未羊
日期:2014-02-20 14:12:13白羊座
日期:2014-02-26 12:06:59
7 [報告]
發(fā)表于 2014-08-07 14:17 |只看該作者

論壇徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年紀念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役紀念章
日期:2022-04-24 14:33:24
8 [報告]
發(fā)表于 2014-08-07 14:55 |只看該作者
回復 6# tasteoftime_90


不是
我是按照3樓的思路寫的
a1-1.log=$(xxxxxxx |awk '{print ;}')
你解釋一下3樓這種寫法是想表達什么意思

論壇徽章:
0
9 [報告]
發(fā)表于 2014-08-07 15:55 |只看該作者
本帖最后由 tasteoftime_90 于 2014-08-07 15:56 編輯

艾瑪 我還是寫全吧
我通過這種形式來獲得最新日志檔的名稱
a1-1.log=$(ls -lt a1-1.log.* |head -1 |awk '{print $8}')
a1-2.log=$(ls -lt a1-2.log.* |head -1 |awk '{print $8}')
b1-1.log=$(ls -lt b1-1.log.* |head -1 |awk '{print $8}')
b1-2.log=$(ls -lt b1-2.log.* |head -1 |awk '{print $8}')
然后想通過循環(huán)來得到各各最新日志檔的最新的xxoo條目
grep -Po '(?<=xxoo )\d+' a1-1.log |tail -5 |awk '{print ;}'
grep -Po '(?<=xxoo )\d+' a1-2.log |tail -5 |awk '{print ;}'
grep -Po '(?<=xxoo )\d+' b1-1.log |tail -5 |awk '{print ;}'
grep -Po '(?<=xxoo )\d+' b1-2.log |tail -5 |awk '{print ;}'

就是這樣 本來是想問一點然后自己研究 這樣
回復 8# Shell_HAT


   

論壇徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年紀念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役紀念章
日期:2022-04-24 14:33:24
10 [報告]
發(fā)表于 2014-08-07 16:57 |只看該作者
回復 9# tasteoftime_90
  1. a1-1.log=$(ls -lt a1-1.log.* |head -1 |awk '{print $8}')
  2. a1-2.log=$(ls -lt a1-2.log.* |head -1 |awk '{print $8}')
  3. b1-1.log=$(ls -lt b1-1.log.* |head -1 |awk '{print $8}')
  4. b1-2.log=$(ls -lt b1-2.log.* |head -1 |awk '{print $8}')
  5. for file in a1-1.log a1-2.log b1-1.log b1-2.log; do
  6.     test=$(grep -Po '(?<=xxoo )\d+' $file |tail -5 |awk '{print ;}')
  7.     echo "$test" >> test.txt
  8. done
復制代碼
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP