私は以下を使用してSFTPサーバーに接続します。
sftp -i key.pem user@server
サーバーには、最大4日までのリストを表示するために使用できるログが含まれていますls
。問題は、lsが4日より古いログを取得できないようです。ディレクトリ内のすべてのログを一覧表示し、全体のサイズを確認する方法を知りたいです。
サイズに関する同様の質問が提起されました。ここ使用のためのソリューションを提供しますdu -hc
。しかし、このコマンドは私のSFTPサーバーには存在せず、SSHアクセス権もありません。どんなアイデアがありますか?
答え1
lftp
du
コマンドとサポートされているプロトコルがありますsftp
。
lftp sftp://user@host
または、パスワードプロンプトを使用してスキップするには、SSHキーを指定します。
lftp -e 'set sftp:connect-program ssh -axi key.pem' sftp://user:@host
プロンプトで実行しますdu
(またはdu -ba
各ファイルとそのサイズをバイト単位で一覧表示するか、du -ha
サフィックスを使用します)sftp
。du
ディスク使用量ではなく見かけのサイズを提供し、ディレクトリファイルのサイズを含まないという点で、Unixコマンドとは異なります。
4日より古いファイルがリストされていない場合は、ls
そのファイルが存在しないか、もう存在しない可能性が最も高いです。または、クライアントls
のコマンドのみが実行されます。sftp
lftp
SFTPプロトコルの「ディレクトリ読み取り」クエリまたは一連のクエリディレクトリの内容を検索します。サーバーがコンテンツを送信せずにSFTPを介さずにデータにアクセスする他の方法がなければ、できることはほとんどありません。