web-dev-qa-db-ja.com

リストに表示されるフィールド名を設定するにはどうすればよいですか?

Ubuntuでコマンドを実行すると、リストが表示され、フィールド名なしで結果が得られます。例はls -lまたはps l

私はあまり経験がなく、常にマニュアルページやオンラインドキュメントを掘り下げる必要があります。そして、その名前はすでにかなり不可解です。

フィールド名のリストをグローバルに、つまりすべてのコマンドに対してオンにする方法はありますか?

注:実際にはps lはフィールド名を示し、ls -l ではない。 2番目は非常に些細なことです。ただし、疑問が残ります。この動作を上書きする方法はありますか?

3
Vorac

@StephaneChazelasが述べたように、これは不可能です。他の選択肢は、ソースを変更する(これを行わない)か、自分で支援するためのラッパースクリプトとエイリアスを開発することだけです。

psにパイプする出力のsortの列を保持するためのこの手法があります。

私はこれを、あなたが必要とする部分をまとめることによってあなたのエイリアス/スクリプトスキルを磨く機会としてとらえます。 Unix/Linuxを使用することの多くは、環境をだまして、作業の習慣やスタイルにアクセスしやすくすることです。

2
slm

slm のアドバイスに従って、次のスクリプトが役立つ場合があります。次のスクリプトを確認してください。ls-lコマンドのフィールドのラベルが作成されます。columnユーティリティ(BSD拡張機能ですが、ほとんどのLinuxディストリビューションにも付属しています)を使用しました。これはutilに含まれています。 -linuxパッケージ。

#!/bin/bash
{ echo Permissions links Owner Group Size Last_modMonth Last_modTime Last_modTime Filename; ls -l ; } | column -t | awk 'NR!~/^(2)$/'
ls -l | head -1

エイリアスを付けて使用できます。

1
Stormvirux