回答:
あなたは次のようなことをすることができます:
ls | cut -c1-20 | columns -W "${COLUMNS:-80}"
(それだcolumns
とs
GNUのAUTOGENから)。または:
ls | cut -c1-20 | column -c"${COLUMNS:-80}"
column
BSD bsdmainutils
、Debian、またはその派生物で見られる
使用。
zsh
列に出力することもサポートしているため、次のような関数を定義できます。
setopt extendedglob
c() print -rC$[COLUMNS/(($1)+2)] -- "${(M)@[2,-1]##?(#c0,$[$1])}"
そしてそれを次のように使用します:
c 20 *.txt
列のリストtxtファイルを印刷するには、20文字に切り捨てます。
そして、少しクレイジーにするために、以下を追加できます。
command_not_found_handler() {(($1)) && c "$@"}
そうすれば、次のこともできます。
20 *
あるいは:
8+8 *