2014-03-04 67 views
3

如果我做在printf中移動列?

perl -e 'printf("%2s %-5s %s\n", "a", "b", "c")' 

然後我得到

a b  c 

問題

我怎樣才能移動b例如右邊4列,但仍左對齊?

(我不認爲正確的方法是手動插入空格)

+4

是的,如果你想要一個列之間的固定空間的差距只是將空格插入格式字符串的一部分。 –

回答

2

是啊。爲什麼不?

perl -e 'printf("%2s  %-5s %s\n", "a", "b", "c")' 
+0

動態的解決方案是創建一個要插入的字符串,例如'my $ x =「」x 4; printf「%2s%s%-5s ...」,「a」,$ x,「b」' – TLP

+0

@TLP,'perl -e'printf(「%2s%* s%-5s%s \ n」 ,「a」,4,「b」,「c」)'' – ikegami

+0

哦,是的,我記得這個...聲稱失去了一個論點,但。似乎無法在文檔中發現這一點。 – TLP