cut
是否可以換行而不換行?阻止換行命令中的換行
printf 'test.test'
打印test.test
而不換行。
但是,如果我減少輸出printf 'test.test' | cut -d. -f1
test
後面有一個換行符。
cut
是否可以換行而不換行?阻止換行命令中的換行
printf 'test.test'
打印test.test
而不換行。
但是,如果我減少輸出printf 'test.test' | cut -d. -f1
test
後面有一個換行符。
沒有,我知道。 man cut
很短,並不反映任何類似的東西。
相反,你可以提供cut
輸出printf
與here-string,使新生產線的問題上printf
又取決於:
printf '%s' $(cut -d. -f1 <<< "test.test")
如果你沒有使用cut
,就可以實現結果與awk
:
printf 'test.test' | awk -F. '{printf($1)}'
謝謝!首先,我有'awk'NR == 3 {printf「WiFi信號強度=」$ 3 * 10/7}'/ proc/net/wireless |切-d。 -f1; printf「%% \ n」'但是'cut'做了一個換行符,所以我要求一個解決方案。不過,如果有一個更簡單的方法來用一個awk命令來解決它,我更喜歡它! (例如'awk'NR == 3 {打印「WiFi信號強度=」$ 3 * 10/7「%」}'/ proc/net/wireless「,並在點後減少$ 3 * 10/7的輸出) – mamiu 2014-10-02 12:58:16
如何:'printf(「WiFi信號強度=%.0f %%」,$ 3 * 10/7)'(最後一個%%對應於awk代碼中的「%」)。 – isedev 2014-10-02 13:02:51
你應該真的接受@ fedorqui的答案 - 它對應於實際發佈的問題。我只是將其答案作爲教育目的的替代方案。 – isedev 2014-10-02 13:06:52
有很多方法。除了isedev和fedorqui的答案,你也可以這樣做:
perl -ne '/^([^.]+)/ && print $1' <<< "test.test"
cut -d. -f1 <<< "test.test" | tr -d $'\n'
cut -d. -f1 <<< "test.test" | perl -pe 's/\n//'
while read -d. i; do printf "%s" "$i"; done <<< "test.test
當我看到一個更通用的問題,你對此有何評論,你」更好地更新問題與你確切想要做的事情。 – fedorqui 2014-10-02 13:00:45