Skip to main content
XCP

scan

Contributors netapp-aoife netapp-pcarriga

The SMB scan command recursively scans the entire SMB share and lists all the files by the end of the scan command.

Syntax
xcp scan \\<SMB share path>
Show example
C:\Users\Administrator\Desktop\xcp>xcp scan \\<IP address or hostname of SMB server>\volxcp
c:\netapp\xcp\xcp scan \\<IP address of SMB destination server>\source_share
volxcp\3333.txt
volxcp\SMB.txt
volxcp\SMB1.txt
volxcp\com.txt
volxcp\commands.txt
volxcp\console.txt
volxcp\linux.txt
volxcp\net use.txt
volxcp\newcom.txt
volxcp\notepad.txt
c:\netapp\xcp\xcp scan \\<IP address of SMB destination server>\source_share
60,345 scanned, 0 matched, 0 errors
Total Time : 8s
STATUS : PASSED
C:\Users\Administrator\Desktop\xcp>Parameters

The following table lists the scan parameters and their description.

Parameter Description

scan -h, –-help

Displays detailed information about how to use the scan command.

scan -v

Increases debug verbosity.

scan -parallel <n>

Specifies the number of concurrent processes (default: <cpu-count>).

scan -match <filter>

Only processes files and directories that match the filter.

scan -exclude <filter>

Only excludes files and directories in the filter.

scan -preserve-atime

Restores the last accessed date on source.

scan -depth <n>

Limits the search depth to n levels.

scan -stats

Lists files in the tree statistic report format.

scan -html

Lists files in the tree statistic HTML report format.

scan -csv

Lists files in the tree statistic CSV report format.

scan -l

Lists files in the long listing output format.

scan -ownership

Retrieves ownership information of files and directories on the source
system.

scan -du

Summarizes space usage of each directory including subdirectories.

scan -fmt <expression>

Formats file listing according to the Python expression (see xcp help -fmt for details).

scan -ads

Recursively scans the entire SMB share and lists all files and any associated alternate data streams.

scan -h, –-help

Use the -h and –-help parameters with the scan command to display detailed information about how to use the scan command.

Syntax
xcp scan --help
Show example
C:\netapp\xcp>xcp scan --help

usage: xcp scan [-h] [-v] [-parallel <n>] [-match <filter>] [-exclude <filter>] [-preserve-atime] [-depth
<n>] [-loglevel <name>] [-stats] [-l] [-ownership] [-du]
                [-fmt <expression>] [-html] [-csv] [-edupe] [-bs <n>] [-ads]
                source
positional arguments:
   source
optional arguments:
   -h, --help           show this help message and exit
   -v                   increase debug verbosity
   -parallel <n>        number of concurrent processes (default: <cpu-count>)
   -match <filter>      only process files and directories that match the filter (see `xcp help -match` for     details)
   -exclude <filter>    Exclude files and directories that match the filter (see `xcp help -exclude` for details)
   -preserve-atime      restore last accessed date on source
   -depth <n>           limit the search depth
   -loglevel <name>     option to set log level filter (default:INFO)
   -stats               print tree statistics report
   -l                   detailed file listing output
   -ownership           retrieve ownership information
   -du                  summarize space usage of each directory including subdirectories
   -fmt <expression>    format file listing according to the python expression (see `xcp help -fmt` for details)
   -html                Save HTML statistics report
   -csv                 Save CSV statistics report
   -edupe               Include dedupe and sparse data estimate in reports (see documentation for details)
   -bs <n>              read/write block size for scans which read data with -edupe (default: 64k)
   -ads                 scan NTFS alternate data stream

scan -v

Use the -v parameter with the scan command to provide detailed logging information to troubleshoot or debug when an error or warning is reported.

Syntax
xcp scan -v \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -v \\<IP address or hostname of SMB server>\source_share
xcp scan -v \\<IP address or hostname of SMB server>\source_share
---Truncated output----
source_share\ASUP.pm
source_share\ASUP_REST.pm
source_share\Allflavors_v2.pm
source_share\Armadillo.pm
source_share\AsupExtractor.pm
source_share\BTS_Config.pm
source_share\Backup.pm
source_share\Aggregate.pm
source_share\Burt.pm
source_share\CConfig.pm
source_share\CIFS.pm
source_share\CR.pm
source_share\CRC.pm
source_share\CSHM.pm
source_share\CSM.pm
source_share\agnostic\SFXOD.pm
source_share\agnostic\Snapmirror.pm
source_share\agnostic\VolEfficiency.pm
source_share\agnostic\flatfile.txt
source_share\agnostic
source_share
xcp scan \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -parallel <n>

Use the -parallel <n> parameter with the scan command to set a higher or lower number of XCP concurrent processes.

Note The maximum value for n is 61.
Syntax
xcp scan -parallel <n> \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -parallel 8 \\<IP address or hostname of SMB server>\cifs_share
xcp scan -parallel 8 \\<IP address or hostname of SMB server>\cifs_share

cifs_share\ASUP.pm
cifs_share\ASUP_REST.pm
cifs_share\Allflavors_v2.pm
cifs_share\Armadillo.pm
cifs_share\AsupExtractor.pm
cifs_share\BTS_Config.pm
cifs_share\Backup.pm
cifs_share\Aggregate.pm
cifs_share\agnostic\CifsAccess.pm
cifs_share\agnostic\DU_Cmode.pm
cifs_share\agnostic\Flexclone.pm
cifs_share\agnostic\HyA_Clone_Utils.pm
cifs_share\agnostic\Fileclone.pm
cifs_share\agnostic\Jobs.pm
cifs_share\agnostic\License.pm
cifs_share\agnostic\Panamax_Clone_Utils.pm
cifs_share\agnostic\LunCmds.pm
cifs_share\agnostic\ProtocolAccess.pm
cifs_share\agnostic\Qtree.pm
cifs_share\agnostic\Quota.pm
cifs_share\agnostic\RbacCmdFetcher.pm
cifs_share\agnostic\RbacCmdFetcher_ReadMe
cifs_share\agnostic\SFXOD.pm
cifs_share\agnostic\Snapmirror.pm
cifs_share\agnostic\VolEfficiency.pm
cifs_share\agnostic\flatfile.txt
cifs_share\agnostic
cifs_share
xcp scan -parallel 8 \\<IP address or hostname of SMB server>\cifs_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -match <filter>

Use the -match <filter> parameter with the scan command to only process files and directories that match the filter.

Syntax
xcp scan -match <filter> \\<IP address or hostname of SMB server>\source_share

In the following example, scan -match scans all files that have changed between one month and one year and prints a line to the console for each file found. The ISO format of its last modification time, a human-readable size of the file, its type, and its relative path are returned for each file.

Show example
c:\netapp\xcp>xcp scan -match "1*month < modified < 1*year" -fmt "'{:>15} {:>7}{}
{}'.format(iso(mtime), humanize_size(size), type, relpath)" \\<IP address or hostname of SMB server>\source_share
xcp scan -match "1*month < modified < 1*year" -fmt "'{:>15} {:>7} {} {}'.format(iso(mtime), humanize_size(size), type, relpath)" \\<IP address or hostname of SMB server>\source_share

xcp scan -match 1*month < modified < 1*year -fmt '{:>15} {:>7} {} {}'.format(iso(mtime), humanize_size(size), type, relpath) \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

In the following example, scan -match lists the files that have not been modified for more than 3 months and have a size bigger than 4MB.

Show example
c:\netapp\xcp>xcp scan -match "modified > 3*month and size > 4194304" -fmt "'{},{},
{}'.format(iso(mtime), humanize_size(size), relpath)" \\<IP address or hostname of SMB
server>\source_share
xcp scan -match "modified > 3*month and size > 4194304" -fmt "'{}, {}, {}'.format(iso(mtime), humanize_size(size), relpath)" \\<IP address or hostname of SMB server>\source_share

xcp scan -match modified > 3*month and size > 4194304 -fmt '{}, {}, {}'.format(iso(mtime), humanize_size(size), relpath) \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

The first of the following two examples only matches the directories and the formatting adds a comma between the variables "mtime", "relative path", and "depth".

The second example redirects the same output to "name.csv".

Show example
c:\netapp\xcp>xcp scan -match "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath, depth]))" \\<IP address or hostname of SMB server>\source_share
xcp scan -match "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath, depth]))" \\<IP address or hostname of SMB server>\source_share

2013-03-07_15:41:40.376072,source_share\agnostic,1
2020-03-05_04:15:07.769268,source_share,0

xcp scan -match type is directory -fmt ','.join(map(str, [iso(mtime), relpath, depth])) \\<IP address or hostname of SMB server>\source_share
317 scanned, 2 matched, 0 errors
Total Time : 0s
STATUS : PASSED
Show example
c:\netapp\xcp>xcp scan -match "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath, depth]))" \\<IP address or hostname of SMB server>\source_share > name.csv
xcp scan -match "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath, depth]))" \\<IP address or hostname of SMB server>\source_share > name.csv

The following example prints the full path and the raw mtime value of all the files that are not directories. The mtime value is padded with 70 characters to facilitate a readable console report.

Show example
c:\netapp\xcp>xcp scan -match "type is not directory" -fmt "'{}{:>70}'.format(abspath, mtime)" \\<IP address or hostname of SMB server>\source_share
xcp scan -match "type is not directory" -fmt "'{} {:>70}'.format(abspath, mtime)" \\<IP address or hostname of SMB server>\source_share

--truncated output--
\\<IP address or hostname of SMB server>\source_share\ASUP.pm
1362688899.238098
\\<IP address or hostname of SMB server>\source_share\ASUP_REST.pm
1362688899.264073
\\<IP address or hostname of SMB server>\source_share\Allflavors_v2.pm
1362688899.394938
\\<IP address or hostname of SMB server>\source_share\Armadillo.pm
1362688899.402936
\\<IP address or hostname of SMB server>\source_share\AsupExtractor.pm
1362688899.410922
\\<IP address or hostname of SMB server>\source_share\BTS_Config.pm
1362688899.443902
\\<IP address or hostname of SMB server>\source_share\Backup.pm
1362688899.444905
\\<IP address or hostname of SMB server>\source_share\Aggregate.pm
1362688899.322019
\\<IP address or hostname of SMB server>\source_share\Burt.pm
1362688899.446889
\\<IP address or hostname of SMB server>\source_share\CConfig.pm
1362688899.4479
\\<IP address or hostname of SMB server>\source_share\CIFS.pm
1362688899.562795
\\<IP address or hostname of SMB server>\source_share\agnostic\ProtocolAccess.pm
1362688900.358093
\\<IP address or hostname of SMB server>\source_share\agnostic\Qtree.pm
1362688900.359095
\\<IP address or hostname of SMB server>\source_share\agnostic\Quota.pm
1362688900.360094
\\<IP address or hostname of SMB server>\source_share\agnostic\RbacCmdFetcher.pm
1362688900.3611
\\<IP address or hostname of SMB server>\source_share\agnostic\RbacCmdFetcher_ReadMe
1362688900.362094
\\<IP address or hostname of SMB server>\source_share\agnostic\SFXOD.pm
1362688900.363094
\\<IP address or hostname of SMB server>\source_share\agnostic\Snapmirror.pm
1362688900.364092
\\<IP address or hostname of SMB server>\source_share\agnostic\VolEfficiency.pm
1362688900.375077
\\<IP address or hostname of SMB server>\source_share\agnostic\flatfile.txt
1362688900.376076

xcp scan -match type is not directory -fmt '{} {:>70}'.format(abspath, mtime) \\<IP address or hostname of SMB server>\source_share
317 scanned, 315 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -exclude <filter>

Use the -exclude <filter> with the scan command to exclude directories and files based on the pattern in the filter.

Syntax
xcp scan -exclude <filter> \\<IP address or hostname of SMB server>\source_share

In the following example, scan -exclude excludes any file that has changed between one month and one year, and prints a line to the console for each file that is not excluded. The details printed for each file are the ISO format of its last modification time, a human-readable size of the file, its type, and its relative path.

Show example
c:\netapp\xcp>xcp scan -exclude "1*month < modified < 1*year" -fmt "'{:>15} {:>7}{}
{}'.format(iso(mtime), humanize_size(size), type, relpath)" \\<IP address or hostname ofSMB server>\localtest\arch\win32\agnostic
xcp scan -exclude "1*month < modified < 1*year" -fmt "'{:>15} {:>7} {}{}'.format(iso(mtime), humanize_size(size), type, relpath)" \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic
2013-03-07_15:39:22.852698 46 regular agnostic\P4ENV
2013-03-07_15:40:27.093887 8.40KiB regular agnostic\Client_outage.thpl
2013-03-07_15:40:38.381870 23.0KiB regular agnostic\IPv6_RA_Configuration_Of_LLA_In_SK_BSD.thpl
2013-03-07_15:40:38.382876 12.0KiB regular agnostic\IPv6_RA_Default_Route_changes.thpl
2013-03-07_15:40:38.383870 25.8KiB regular agnostic\IPv6_RA_Port_Role_Change.thpl
2013-03-07_15:40:38.385863 28.6KiB regular
agnostic\IPv6_RA_processing_And_Default_Route_Installation.thpl
2013-03-07_15:40:38.386865 21.8KiB regular agnostic\IPv6_RA_processing_large_No_Prefix.thpl
2013-03-07_15:40:40.323163          225 regular agnostic\Makefile
2013-03-07_15:40:40.324160          165 regular agnostic\Makefile.template
----truncated output ----
2013-03-07_15:45:36.668516            0 directory agnostic\tools\limits_finder\vendor\symfony\src
2013-03-07_15:45:36.668514            0 directory agnostic\tools\limits_finder\vendor\symfony
2013-03-07_15:45:40.782881            0 directory agnostic\tools\limits_finder\vendor
2013-03-07_15:45:40.992685            0 directory agnostic\tools\limits_finder
2013-03-07_15:45:53.242817            0 directory agnostic\tools
2013-03-07_15:46:11.334815            0 directory agnostic

xcp scan -exclude 1*month < modified < 1*year -fmt '{:>15} {:>7} {} {}'.format(iso(mtime), humanize_size(size), type, relpath) \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic
140,856 scanned, 1 excluded, 0 errors
Total Time : 46s
STATUS : PASSED

In the following example, scan -exclude lists the not excluded files that have not been modified for more than three months and have a size greater than 5.5 KB. The details that are printed for each file are the ISO format of its last modification time, a human-readable size of the file, its type, and its relative path.

Show example
c:\netapp\xcp>xcp scan -exclude "modified > 3*month and size > 5650" -fmt "'{}, {}, {}'.format(iso(mtime), humanize_size(size), relpath)" \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic\snapmirror
xcp scan -exclude "modified > 3*month and size > 5650" -fmt "'{}, {}, {}'.format(iso(mtime), humanize_size(size) relpath)" \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic\snapmirror

2013-03-07_15:44:53.713279, 4.31KiB, snapmirror\rsm_abort.thpl
2013-03-07_15:44:53.714269, 3.80KiB, snapmirror\rsm_break.thpl
2013-03-07_15:44:53.715270, 3.99KiB, snapmirror\rsm_init.thpl
2013-03-07_15:44:53.716268, 2.41KiB, snapmirror\rsm_quiesce.thpl
2013-03-07_15:44:53.717263, 2.70KiB, snapmirror\rsm_release.thpl
2013-03-07_15:44:53.718260, 4.06KiB, snapmirror\rsm_resume.thpl
2013-03-07_15:44:53.720256, 4.77KiB, snapmirror\rsm_resync.thpl
2013-03-07_15:44:53.721258, 3.83KiB, snapmirror\rsm_update.thpl
2013-03-07_15:44:53.724256, 4.74KiB, snapmirror\sm_quiesce.thpl
2013-03-07_15:44:53.725254, 4.03KiB, snapmirror\sm_resync.thpl
2013-03-07_15:44:53.727249, 4.30KiB, snapmirror\sm_store_complete.thpl
2013-03-07_15:44:53.729250, 0, snapmirror

xcp scan -exclude modified > 3*month and size > 5650 -fmt '{}, {}, {}'.format(iso(mtime), humanize_size(size), relpath) \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic\snapmirror
18 scanned, 6 excluded, 0 errors Total Time : 0s
STATUS : PASSED

This following example excludes directories. It lists the not excluded files with formatting that adds a comma between the variables mtime, relpath, and depth.

Show example
c:\netapp\xcp>xcp scan -exclude "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath, depth]))" \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic\snapmirror
xcp scan -exclude "type is directory" -fmt "','.join(map(str, [iso(mtime), relpath,depth]))"
\\<IP address or hostname of SMBserver>\localtest\arch\win32\agnostic\snapmirror
2013-03-07_15:44:53.712271,snapmirror\SMutils.pm,1
2013-03-07_15:44:53.713279,snapmirror\rsm_abort.pm,1
2013-03-07_15:44:53.714269,snapmirror\rsm_break.pm,1
2013-03-07_15:44:53.715270,snapmirror\rsm_init.thpl,1
2013-03-07_15:44:53.716268,snapmirror\rsm_quiesce.thpl,1
2013-03-07_15:44:53.717263,snapmirror\rsm_release.thpl,1
2013-03-07_15:44:53.718260,snapmirror\rsm_resume.thpl,1
2013-03-07_15:44:53.720256,snapmirror\rsm_resync.thpl,1
2013-03-07_15:44:53.721258,snapmirror\rsm_update.thpl,1
2013-03-07_15:44:53.722261,snapmirror\sm_init.thpl,1
2013-03-07_15:44:53.723257,snapmirror\sm_init_complete.thpl,1
2013-03-07_15:44:53.724256,snapmirror\sm_quiesce.thpl,1
2013-03-07_15:44:53.725254,snapmirror\sm_resync.thpl,1
2013-03-07_15:44:53.726250,snapmirror\sm_retrieve_complete.thpl,1
2013-03-07_15:44:53.727249,snapmirror\sm_store_complete.thpl,1
2013-03-07_15:44:53.728256,snapmirror\sm_update.thpl,1
2013-03-07_15:44:53.729260,snapmirror\sm_update_start.thpl,1

xcp scan -exclude type is directory -fmt ','.join(map(str, [iso(mtime), relpath, depth])) \\<IP address or hostname of SMB server>\localtest\arch\win32\agnostic\snapmirror
18 scanned, 1 excluded, 0 errors
Total Time : 0s
STATUS : PASSED

This following example prints the complete file path and the raw mtimevalue of all files that are not directories. The mtimevalue is padded with 70 characters to facilitate a readable console report.

Show example
c:\netapp\xcp>xcp scan -exclude "type is not directory" -fmt "'{} {:>70}'.format(abspath, mtime)" \\<IP address or hostname of SMBserver>\source_share

xcp scan -exclude type is not directory -fmt '{} {:>70}'.format(abspath, mtime) \\<IP address or hostname of SMB server>\source_share
18 scanned, 17 excluded, 0errors
Total Time : 0s
STATUS : PASSED

scan -preserve-atime

Use the -preserve-atime parameter with the scan command to restore the last accessed date of all the files on the source and reset the atime to the original value before XCP read the file.

When you scan an SMB share, the access time is modified on the files (if the storage system is configured to modify atime on read) because XCP is reading the files one by one. XCP never changes the atime, it just reads the file, which triggers an update on atime.

Syntax
xcp scan -preserve-atime \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -preserve-atime \\<IP address or hostname of SMB server>\source_share
xcp scan -preserve-atime \\<IP address or hostname of SMB server>\source_share

source_share\ASUP.pm
source_share\ASUP_REST.pm
source_share\Allflavors_v2.pm
source_share\Armadillo.pm
source_share\AsupExtractor.pm
source_share\BTS_Config.pm
source_share\Backup.pm
source_share\Aggregate.pm
source_share\Burt.pm
source_share\CConfig.pm
source_share\agnostic\ProtocolAccess.pm
source_share\agnostic\Qtree.pm
source_share\agnostic\Quota.pm
source_share\agnostic\RbacCmdFetcher.pm
source_share\agnostic\RbacCmdFetcher_ReadMe
source_share\agnostic\SFXOD.pm
source_share\agnostic\Snapmirror.pm
source_share\agnostic\VolEfficiency.pm
source_share\agnostic\flatfile.txt
source_share\agnostic
source_share

xcp scan -preserve-atime \\<IP address or hostname of SMBserver>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 1s
STATUS : PASSED

scan -depth <n>

Use the -depth <n> parameter with the scan command to limit the search depth of directories inside an SMB share.

Note The –depth option specifies how deep XCP can scan the files into the subdirectories.
Syntax
xcp scan -depth <2> \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -depth 2 \\<IP address or hostname of SMB server>\source_share
xcp scan -depth 2 \\<IP address or hostname of SMB server>\source_share

source_share\ASUP.pm
source_share\ASUP_REST.pm
source_share\Allflavors_v2.pm
source_share\Armadillo.pm
source_share\AsupExtractor.pm
source_share\BTS_Config.pm
source_share\Backup.pm
source_share\Aggregate.pm
source_share\Burt.pm
source_share\CConfig.pm
source_share\CIFS.pm
source_share\CR.pm
source_share\CRC.pm
source_share\CSHM.pm
source_share\agnostic\Fileclone.pm
source_share\agnostic\Jobs.pm
source_share\agnostic\License.pm
source_share\agnostic\Panamax_Clone_Utils.pm
source_share\agnostic\LunCmds.pm
source_share\agnostic\ProtocolAccess.pm
source_share\agnostic\Qtree.pm
source_share\agnostic\Quota.pm
source_share\agnostic\RbacCmdFetcher.pm
source_share\agnostic\RbacCmdFetcher_ReadMe
source_share\agnostic\SFXOD.pm
source_share\agnostic\Snapmirror.pm
source_share\agnostic\VolEfficiency.pm
source_share\agnostic\flatfile.txt
source_share\agnostic
source_share

xcp scan -depth 2 \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -stats

Use the -stats parameter with the scan command to list files in a tree statistics report format.

Syntax
xcp scan -stats \\<IP address or hostname of SMB server>\source_share
Show example
C:\netapp\xcp>xcp scan -stats \\<IP address or hostname of SMB server>\cifs_share

== Maximum Values ==
        Size      Depth      Namelen     Dirsize
     88.2MiB          3          108          20

== Average Values ==
        Size      Depth      Namelen    Dirsize
     4.74MiB          2          21            9

== Top File Extensions ==
no extension      .PDF       .exe       .html      .whl     .py      other
   22               2          2           2         2        1        9
  20.0KiB        1.54MiB    88.4MiB     124KiB    1.47MiB  1.62KiB   98.3MiB

== Number of files ==
  empty    <8KiB    8-64KiB    64KiB-1MiB    1-10MiB    10-100MiB    >100MiB
      2       24          2             7          2            3

== Space used ==
  empty    <8KiB    8-64KiB    64KiB-1MiB    1-10MiB    10-100MiB     >100MiB
      0  24.0KiB     124KiB       2.87MiB    2.91MiB       184MiB           0

== Directory entries ==
  empty     1-10     10-100        100-1K     1K-10K         >10K
               4          1
== Depth ==
    0-5     6-10      11-15         16-20     21-100         >100
     45

== Modified ==
>1 year  9-12 months  6-9 months  3-6 months  1-3 months  1-31 days  1-24 hrs  <1
hour     <15 mins       future      <1970       invalid
                                                                   44         1
                                                               190MiB

== Created ==
>1 year  9-12 months  6-9 months  3-6 months  1-3 months  1-31 days  1-24 hrs  <1
hour     <15 mins       future      <1970       invalid
                                                                   45
                                                               190MiB
Total count: 45
Directories: 5
Regular files: 40
Symbolic links:
Junctions:
Special files:
Total space for regular files: 190MiB
Total space for directories: 0
Total space used: 190MiB
Dedupe estimate: N/A
Sparse data: N/A
xcp scan -stats \\<IP address or hostname of SMB server>\cifs_share
45 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -html

Use the -html parameter with the scan command to list files in a HTML statistics report.

Note XCP reports (.csv, .html) are saved in the same location as the XCP binary. The file name is in the format <xcp_process_id>_<time_stamp>.html. When XCP cannot map security identifiers (SIDs) to owner names, it uses the last few digits after the final “–” in the SID to represent the owner. For example, when XCP is unable to map the SID S-1-5-21-1896871423-3211229150-3383017265-4854184 to its owner, it represents the owner by using 4854184.
Syntax
xcp scan -stats -html -preserve-atime -ownership \\<IP address or hostname of SMB server>\source_share
Show example
Z:\scripts\xcp\windows>xcp scan -stats -html -preserve-atime -ownership \\<IP address or hostname of SMB server>\source_share
1,972 scanned, 0 matched, 0 errors, 7s
4,768 scanned, 0 matched, 0 errors,12s
7,963 scanned, 0 matched, 0 errors,17s
10,532 scanned, 0 matched, 0 errors,22s
12,866 scanned, 0 matched, 0 errors,27s
15,770 scanned, 0 matched, 0 errors,32s
17,676 scanned, 0 matched, 0 errors,37s

== Maximum Values ==
     Size      Depth     Namelen     Dirsize
   535KiB         16          33          45

== Average Values ==
     Size      Depth     Namelen     Dirsize
  10.3KiB          7          11           6

== Top File SIDs ==
S-1-5-21-1896871423-3211229150-3383017265-4854184 S-1-5-32-544 S-1-5-21-1896871423-3211229150-3383017265-3403389
     9318       8470           1

== Top Space SIDs ==
S-1-5-21-1896871423-3211229150-3383017265-4854184 S-1-5-32-544 S-1-5-21-1896871423-3211229150-3383017265-3403389
  76.8MiB    69.8MiB           0

== Top File Extensions ==
       py	      .rst	     .html  no	extension	    .txt	    .png	    other
     5418	      3738	      1974	         1197    	630      	336	      1344

== Number of files ==
    empty	     <8KiB	   8-64KiB	   64KiB-1MiB   1-10MiB	 10-100MiB	 >100MiB
      168	     11466	      2709	          294

== Space used ==
    empty     <8KiB      8-64KiB     64KiB-1MiB   1-10MiB  10-100MiB   >100MiB
        0     24.4MiB    55.3MiB        66.9MiB

== Directory entries ==
    empty      1-10       10-100         100-1K    1K-10K       >10K
       42      2690          420

== Depth ==
      0-5	     6-10	       11-15	          16-20	   21-100	      >100
     3832	    12527	        1424	              6

== Modified ==
  >1 year	  >1 month	  1-31 days	     1-24 hrs	  <1 hour	   <15 mins	  future	  invalid
  	11718       2961                                 3110
== Created ==
  >1 year  	>1 month    1-31 days	     1-24 hrs   <1 hour    <15 mins	  future	  invalid
                                              1    	17788
== Accessed ==
  >1 year 	>1 month	  1-31 days	     1-24 hrs	  <1 hour	   <15 mins	  future	  invalid
			                                              14624	       3165

Total count: 17789
Directories: 3152
Regular files: 14637
Symbolic links:
Junctions:
Special files:
Total space for regular files:147MiB
Total space for directories: 0
Total space used: 147MiB
Dedupe estimate: N/A
Sparse data: N/A
xcp scan -stats -html -preserve-atime -ownership \\<IP address or hostname ofSMB
server>\source_share
17,789 scanned, 0 matched, 0errors
Total Time : 39s
STATUS : PASSED

scan -csv

Use the -csv parameter with the scan command to list files in a CSV tree statistics report.

Syntax
xcp scan -stats -csv -preserve-atime -ownership \\<IP address or hostname of SMB server>\source_share
Show example
Z:\scripts\xcp\windows>xcp scan -stats -csv -preserve-atime -ownership \\<IP address or hostname of SMB server>\source_share

1,761 scanned, 0 matched, 0 errors, 6s
4,949 scanned, 0 matched, 0 errors,11s
7,500 scanned, 0 matched, 0 errors,16s
10,175 scanned, 0 matched, 0 errors,21s
12,371 scanned, 0 matched, 0 errors,26s
15,330 scanned, 0 matched, 0 errors,31s
17,501 scanned, 0 matched, 0 errors,36s

== Maximum Values ==
    Size      Depth	     Namelen     Dirsize
  535KiB	       16	          33	        45

== Average Values ==
    Size	    Depth	     Namelen	   Dirsize
 10.3KiB	        7	          11	         6

== Top File SIDs ==
S-1-5-21-1896871423-3211229150-3383017265-4854184 S-1-5-32-544 S-1-5-21-1896871423-3211229150- 3383017265-3403389
    9318	     8470	           1

== Top Space SIDs ==
S-1-5-21-1896871423-3211229150-3383017265-4854184 S-1-5-32-544 S-1-5-21-1896871423-3211229150- 3383017265-3403389
 76.8MiB	  69.8MiB	           0

== Top File Extensions ==
	  .py	    .rst	   .html	no extension      .txt       .png	    other
	 5418	    3738	    1974          1197       630        336	     1344

==	Number of files ==
    empty      <8KiB	     8-64KiB    64KiB-1MiB	  1-10MiB	10-100MiB  	>100MiB
	  168	   11466	        2709           294

== Space used ==
   empty	   <8KiB	    8-64KiB    64KiB-1MiB	 1-10MiB	10-100MiB	  >100MiB
      0	     24.4MiB        55.3MiB	      66.9MiB	       0          0         0

== Directory entries ==
	empty	     1-10	  10-100        100-1K    1K-10K       >10K
	   42	     2690	     420

==	Depth ==
	  0-5	     6-10	   11-15	       16-20	  21-100       >100
	 3832	    12527	    1424             6

==	Modified ==
 >1 year	 >1 month   1-31 days	 1-24 hrs  	<1 hour  	<15 mins	future	invalid
	 11718	     2961		             3110

== Created ==
 >1 year	 >1 month   1-31 days	 1-24 hrs  	<1 hour	  <15 mins	future	invalid
                                        17789

== Accessed ==
 >1 year	 >1 month   1-31 days	 1-24 hrs	  <1 hour	  <15 mins	future	invalid
		                                15754	     2035

Total count: 17789
Directories: 3152
Regular files: 14637 Symbolic links:
Junctions:
Special files:
Total space for regular files: 147MiB Total space for directories: 0 Total space used: 147MiB
Dedupe estimate: N/A Sparse data: N/A
xcp scan -stats -csv -preserve-atime -ownership \\<IP address or hostname of SMB server>\source_share
17,789 scanned, 0 matched, 0 errors Total Time : 40s
STATUS : PASSED

scan -l

Use the -l parameter with the scan command to list files in the long listing output format.

Syntax
xcp scan -l \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -l \\<IP address or hostname of SMB server>\source_share xcp scan -l \\<IP address or hostname of SMB server>\source_share

f   195KiB   7y0d source_share\ASUP.pm
f  34.7KiB   7y0d source_share\ASUP_REST.pm
f  4.11KiB	 7y0d source_share\Allflavors_v2.pm
f  38.1KiB	 7y0d source_share\Armadillo.pm
f  3.83KiB	 7y0d source_share\AsupExtractor.pm
f  70.1KiB	 7y0d source_share\BTS_Config.pm
f  2.65KiB	 7y0d source_share\Backup.pm
f  60.3KiB	 7y0d source_share\Aggregate.pm
f  36.9KiB	 7y0d source_share\Burt.pm
f  8.98KiB	 7y0d source_share\CConfig.pm
f  19.3KiB 	 7y0d source_share\CIFS.pm
f  20.7KiB	 7y0d source_share\CR.pm
f  2.28KiB   7y0d source_share\CRC.pm
f  18.7KiB   7y0d source_share\CSHM.pm
f  43.0KiB   7y0d source_share\CSM.pm
f  19.7KiB	 7y0d source_share\ChangeModel.pm
f  33.3KiB	 7y0d source_share\Checker.pm
f  3.47KiB	 7y0d source_share\Class.pm
f  37.8KiB	 7y0d source_share\Client.pm
f   188KiB   7y0d source_share\agnostic\Flexclone.pm
f  15.9KiB   7y0d source_share\agnostic\HyA_Clone_Utils.pm
f  13.4KiB   7y0d source_share\agnostic\Fileclone.pm
f  41.8KiB   7y0d source_share\agnostic\Jobs.pm
f  24.0KiB   7y0d source_share\agnostic\License.pm
f  34.8KiB   7y0d source_share\agnostic\Panamax_Clone_Utils.pm
f  30.2KiB   7y0d source_share\agnostic\LunCmds.pm
f  40.9KiB   7y0d source_share\agnostic\ProtocolAccess.pm
f  15.7KiB   7y0d source_share\agnostic\Qtree.pm
f  29.3KiB   7y0d source_share\agnostic\Quota.pm
f  13.7KiB   7y0d source_share\agnostic\RbacCmdFetcher.pm
f  5.55KiB   7y0d source_share\agnostic\RbacCmdFetcher_ReadMe
f  3.92KiB   7y0d source_share\agnostic\SFXOD.pm
f  35.8KiB   7y0d source_share\agnostic\Snapmirror.pm
f  40.4KiB   7y0d source_share\agnostic\VolEfficiency.pm
f  6.22KiB   7y0d source_share\agnostic\flatfile.txt
d	     0   7y0d source_share\agnostic
d	     0 19h17m source_share

xcp scan -l \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -ownership

Use the -ownership parameter with the scan command to retrieve ownership information for files.

Note You can only use -ownership with the -l, -match, -fmt, or -stats parameters.
Syntax
xcp scan -l -ownership \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -l -ownership \\<IP address or hostname of SMB server>\source_share xcp scan -l -ownership \\<IP address or hostname of SMB server>\source_share

f	BUILTIN\Administrators	195KiB	7y0d	source_share\ASUP.pm
f	BUILTIN\Administrators	34.7KiB	7y0d	source_share\ASUP_REST.pm
f	BUILTIN\Administrators	4.11KiB	7y0d	source_share\Allflavors_v2.pm
f	BUILTIN\Administrators	38.1KiB	7y0d	source_share\Armadillo.pm
f	BUILTIN\Administrators	3.83KiB	7y0d	source_share\AsupExtractor.pm
f	BUILTIN\Administrators	70.1KiB	7y0d	source_share\BTS_Config.pm
f	BUILTIN\Administrators	2.65KiB	7y0d	source_share\Backup.pm
f	BUILTIN\Administrators	60.3KiB	7y0d	source_share\Aggregate.pm
f	BUILTIN\Administrators	36.9KiB	7y0d	source_share\Burt.pm
f	BUILTIN\Administrators	8.98KiB	7y0d	source_share\CConfig.pm
f	BUILTIN\Administrators	19.3KiB	7y0d	source_share\CIFS.pm
f	BUILTIN\Administrators	20.7KiB	7y0d	source_share\CR.pm
f	BUILTIN\Administrators	2.28KiB	7y0d	source_share\CRC.pm
f	BUILTIN\Administrators	18.7KiB	7y0d	source_share\CSHM.pm
f	BUILTIN\Administrators	43.0KiB	7y0d	source_share\CSM.pm
f	BUILTIN\Administrators	19.7KiB	7y0d	source_share\ChangeModel.pm
f	BUILTIN\Administrators	33.3KiB	7y0d	source_share\Checker.pm
f	BUILTIN\Administrators	3.47KiB	7y0d	source_share\Class.pm
f	BUILTIN\Administrators	37.8KiB	7y0d	source_share\Client.pm
f	BUILTIN\Administrators	2.44KiB	7y0d	source_share\ClientInfo.pm
f	BUILTIN\Administrators	37.2KiB	7y0d	source_share\ClientMgr.pm
f	BUILTIN\Administrators	17.1KiB	7y0d	source_share\ClientRPC.pm
f	BUILTIN\Administrators	9.21KiB	7y0d	source_share\ClusterAgent.pm
f   BUILTIN\Administrators  15.7KiB 7y0d source_share\agnostic\Qtree.pm
f   BUILTIN\Administrators  29.3KiB 7y0d source_share\agnostic\Quota.pm
f   BUILTIN\Administrators  13.7KiB 7y0d source_share\agnostic\RbacCmdFetcher.pm
f   BUILTIN\Administrators  5.55KiB 7y0d source_share\agnostic\RbacCmdFetcher_ReadMe
f   BUILTIN\Administrators  3.92KiB 7y0d source_share\agnostic\SFXOD.pm
f   BUILTIN\Administrators  35.8KiB 7y0d source_share\agnostic\Snapmirror.pm
f   BUILTIN\Administrators  40.4KiB 7y0d source_share\agnostic\VolEfficiency.pm
f   BUILTIN\Administrators  6.22KiB 7y0d source_share\agnostic\flatfile.txt
d   BUILTIN\Administrators  7y0d source_share\agnostic
d   BUILTIN\Administrators

xcp scan -l -ownership \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors Total Time : 1s
STATUS : PASSED

scan -du

Use the -du parameter with the scan command to summarize the space usage of each directory, including subdirectories.

Syntax
xcp scan -du \\<IP address or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -du \\<IP address or hostname of SMB server>\source_share xcp scan -du \\<IP address or hostname of SMB server>\source_share

  569KiB source_share\agnostic
  19.8MiB source_share

xcp scan -du \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -fmt <expression>

Use the -fmt <expression> parameter with the scan command to format a file listing according to a defined expression.

Syntax
xcp scan -fmt "', '.join(map(str, [relpath, name, size, depth]))" \\<IPaddress or hostname of SMB server>\source_share
Show example
c:\netapp\xcp>xcp scan -fmt "', '.join(map(str, [relpath, name, size, depth]))"	\\<IP address or hostname of SMB server>\source_share
xcp scan -fmt "', '.join(map(str, [relpath, name, size, depth]))"	\\<IP address or hostname of SMB server>\source_share

source_share\ASUP.pm, ASUP.pm, 199239, 1
source_share\ASUP_REST.pm, ASUP_REST.pm, 35506, 1
source_share\Allflavors_v2.pm, Allflavors_v2.pm, 4204, 1
source_share\Armadillo.pm, Armadillo.pm, 39024, 1
source_share\AsupExtractor.pm, AsupExtractor.pm, 3924, 1
source_share\BTS_Config.pm, BTS_Config.pm, 71777, 1
source_share\Backup.pm, Backup.pm, 2714, 1
source_share\Aggregate.pm, Aggregate.pm, 61699, 1
source_share\Burt.pm, Burt.pm, 37780, 1
source_share\CConfig.pm, CConfig.pm, 9195, 1
source_share\CIFS.pm, CIFS.pm, 19779, 1
source_share\CR.pm, CR.pm, 21215, 1
source_share\CRC.pm, CRC.pm, 2337, 1
source_share\agnostic\LunCmds.pm, LunCmds.pm, 30962, 2
source_share\agnostic\ProtocolAccess.pm, ProtocolAccess.pm, 41868, 2
source_share\agnostic\Qtree.pm, Qtree.pm, 16057,2
source_share\agnostic\Quota.pm, Quota.pm, 30018,2
source_share\agnostic\RbacCmdFetcher.pm, RbacCmdFetcher.pm, 14067, 2
source_share\agnostic\RbacCmdFetcher_ReadMe, RbacCmdFetcher_ReadMe, 5685, 2
source_share\agnostic\SFXOD.pm, SFXOD.pm, 4019, 2
source_share\agnostic\Snapmirror.pm, Snapmirror.pm, 36624, 2
source_share\agnostic\VolEfficiency.pm, VolEfficiency.pm, 41344, 2
source_share\agnostic\flatfile.txt, flatfile.txt, 6366, 2
source_share\agnostic, agnostic, 0, 1
source_share, , 0, 0
xcp scan -fmt ', '.join(map(str, [relpath, name, size, depth])) \\<IP address or hostname of SMB server>\source_share
317 scanned, 0 matched, 0 errors
Total Time : 0s
STATUS : PASSED

scan -ads

Use the -ads flag parameter with the scan command with to recursively scan the entire SMB share and list all files and any associated alternate data streams.

Syntax
xcp scan -ads \\<source_ip_address>\source_share\src
Show example
C:\netapp\xcp>xcp scan -ads \\<source_ip_address>\source_share\src

src\file1.txt:ads1
src\file1.txt:ads_file1.txt_1697037934.4154522.txt
src\file1.txt
src\file2.txt:ads1
src\file2.txt:ads_file2.txt_1697037934.5873265.txt
src\file2.txt
src\test1.txt:ads_test1.txt_1697037934.7435765.txt
src\test1.txt
src\dir1\dfile1.txt:ads1
src\dir1\dfile1.txt:ads_dfile1.txt_1697037934.1185782.txt
src\dir1\dfile1.txt:ads_xcp.exe
src\dir1\dfile1.txt:ads_tar
src\dir1\dfile1.txt:java_exe
src\dir1\dfile1.txt:cmdzip
src\dir1\dfile1.txt:ads1_2GB
src\dir1\dfile1.txt
src\dir1:ads1
src\dir1:ads_dir1_1697038504.087317.txt
src\dir1
src:ads_src_1697038504.7123322.txt
src

xcp scan -ads \\<source_ip_address>\source_share\src
6 scanned, 0 matched, 0 errors, 15 ads scanned
Total Time : 2s
STATUS : PASSED