看板 Linux 關於我們 聯絡資訊
舉個fdisk的例子, fdisk -lu /dev/sda|grep ^/dev/sda|cut -c 29-37 690794 94638914 10458314 29993354 35262674 36049859 94638914 現在我想把每一個數字扣掉16666 echo $((`fdisk -lu /dev/sda|grep ^/dev/sda|cut -c 29-37`-16666)) zsh: bad math expression: operator expected at `94638914\n ...' 我希望運算後的每一項當成stdin給dd當成參數但光是運算就卡死了,連echo 都出不來,請問這部分要怎模解決? -- 太初有道,道與耶和華同在,道就是耶和華。這道太初與耶和華同在。 萬物乃藉祂所造,凡被造的沒有一樣不是藉著祂所造的。生命在祂裡頭, 這生命就是人的光。光照在黑暗裡,黑暗卻不接受光。 吾輩乃生於黑暗,行於黑暗。因神之指引,行向光明;又因撒旦誘惑,回歸黑暗。 我不斷地徘徊於光明與黑暗之間,從被造之日至今,又自今直到那審判之日的來臨。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.176.56.78
Lance0312:xargs -I@ expr @ - 16666 06/02 20:25
c23328:推簽名檔 06/02 20:30
Bencrie:先確定一下那些數字是從哪來的,是 stdout 還是 stderr 06/02 21:34
kdjf:它不就跟你說了 "\n" 啊 06/02 22:29
LIAR:就算看到\n,我也不知道要怎麼處裡(泣),我以為會先算完一行 06/02 22:47
LIAR:再往下算的。 06/02 22:47
LIAR:話說為什麼是94638914\n而不是690794\n啊?第一筆通關了? 06/02 22:56
kdjf:它看到的是 $((123\n 234\n 345\n 456\n -16666)) 06/03 00:39
LIAR:感謝一樓L大,我又多學到兩個指令了XD 06/09 21:17
LIAR:回K大:我意思是第一筆690794後面就有\n了,為什麼stderr 06/09 21:18
LIAR:卻是從第二筆的94638914\n才說?我以為會顯示690794\n就錯誤 06/09 21:20