OOS などのオブジェクトストレージにデータを転送する際、ファイルシステムの互換性の問題により、255 文字を超えるファイル名のファイルを処理することが最善です。これにより、転送の失敗を防ぐことができます。
Windows では、Powershell の Get-ChildItem コマンドを使用できます。
Get-ChildItem -r * # フォルダー内のすべてのオブジェクトを取得 {$_.GetType ().Name -match"File” } # ファイルのタイプ名を取得 {$_.fullname.length -ge 256} # ファイル名の長さが 256 以上のファイル %{$_.fullname} # ファイル名を表示
Get-ChildItem -r * |? {$_.GetType().Name -match"File" } |? {$_.fullname.length -ge 256} |%{$_.fullname}
Linux では、length プロパティを使用してください。
find. -type f | awk 'length> 255'> longfilename-list.txt
各ファイルシステムの最大ファイル名の長さ
ファイルシステム | 最大ファイル名の長さ | 最大ファイルサイズ | 最大パーティションサイズ |
---|---|---|---|
ext2 | 255 バイト | 2 TB | 16 TB |
ext3 | 255 バイト | 2 TB | 16 TB |
ext4 | 255 バイト | 16 TB | 1 EB |
XFS | 255 バイト | 8 EB | 8 EB |
Btrfs | 255 バイト | 16 EB | 16 EB |
参考 https://stackoverflow.com/q/12697259/614863 https://www.helplib.com/diannao/article\_172660 https://blog.csdn.net/baixiaokanglili/article/details/78804991