重複なしで先行「」。エントリを除いて、ディレクトリ内のファイル名とディレクトリ名の最初の文字をカンマで区切って大文字と小文字を区別しないリストを生成するにはどうすればよいですか?再帰的である必要はありません。 1つのレベルの深さだけで済みます。
たとえば、lsで作成されたディレクトリは...
drwxr-xr-x+ 10 bryan staff 340B Jun 6 15:32 .
drwxrwx---@ 27 bryan staff 918B Jun 6 15:29 ..
-rw-r--r--@ 1 bryan staff 6.0K Jun 6 15:32 .secrets
drwxr-xr-x+ 2 bryan staff 68B Jun 6 15:30 Apoptosis
drwxr-xr-x+ 2 bryan staff 68B Jun 6 15:32 Fanciful Notions
-rwxr-x---@ 1 bryan staff 351B Jun 2 16:57 Pungent
-rwxr-x---@ 1 bryan staff 351B Jun 2 16:57 Zoophilia
-rwxr-x---@ 1 bryan staff 351B Jun 2 16:57 addled_symbionts
-rwxr-x---@ 1 bryan staff 351B Jun 2 16:57 putrid
drwxr-xr-x+ 2 bryan staff 68B Jun 6 15:30 zuegma mandegreen
…帰りたい…
a, f, p, z
私はBSDを使用していて愚かですが、これはうまくいきません。
ベストアンサー1
Shell/coreutils を使用してこれを行うことができます。
for f in *; do printf "%s\n" "${f:0:1}" ; done |
tr '[A-Z]' '[a-z]' | sort | uniq | paste -d, -s
この構文は、位置から始まる${var:X:Y}
変数のY文字の長い部分文字列を出力します。$var
X