1

私がするとき、私はls -l得る

-rw-r--r--   1 jboss    admin  **26644936** Sep  1 21:23 MyBig.war

以下のように印刷するにはどうすればよいですか

-rw-r--r--   1 jboss    admin  **26,644,936** Sep  1 21:23 MyBig.war
4

2 に答える 2

3
于 2013-09-04T04:29:39.580 に答える
1

使用sed:

$ ls_output='-rw-r--r--   1 jboss    admin  26644936 Sep  1 21:23 MyBig.war'
$ echo $ls_output | sed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1,\2/;ta'
-rw-r--r--   1 jboss    admin  26,644,936 Sep  1 21:23 MyBig.war

上記の sed コマンドは、最後の 4 桁####を繰り返し#,###.

  • -e :aa: コマンド用の名前のラベルを作成しtます。
  • taa:置換が成功した場合にジャンプします。
于 2013-09-04T04:24:13.470 に答える